Questions tagged «c#»

C#(发音为“ See Sharp”)是由Microsoft开发的一种高级,静态类型的多范例编程语言。C#代码通常针对Microsoft的.NET系列工具和运行时,其中包括.NET Framework,.NET Core和Xamarin。使用此标记可解决有关用C#或C#正式规范编写的代码的问题。


5
如何获取.NET Core项目以将NuGet引用复制到生成输出?
我正在尝试使用.NET Core编写插件系统,而我的要求之一是能够将插件DLL及其依赖项分发给用户进行安装。 但是,我无法弄清楚如何将我的NuGet依赖项作为构建工件包括在内,并将它们输出到构建文件夹中,而不必dotnet publish用作黑客。有什么方法可以在.csproj文件(项目文件)中指定此名称?
109 c#  msbuild  .net-core  nuget  csproj 

10
我如何从Startup.cs中写入日志
为了调试启动失败的.net核心应用程序,我想从startup.cs文件中写入日志。我在该文件中有日志记录设置,该文件可在startup.cs文件之外的其他应用程序中使用,但是不确定如何从startup.cs文件本身内写入日志。
109 c#  asp.net-core 

9
无法访问的代码,但是有异常可以访问
此代码是读取和写入ODBC连接的数据库的应用程序的一部分。它在数据库中创建一条记录,然后检查是否已成功创建记录,然后返回true。 我对控制流程的理解如下: command.ExecuteNonQuery()被记录为Invalid​Operation​Exception在“方法调用对于对象的当前状态无效”时引发。因此,如果发生这种情况,该try块的执行将停止,该finally块将被执行,然后return false;在底部执行。 但是,我的IDE声称该return false;代码不可访问。而且这似乎是事实,我可以删除它,并且可以毫无抱怨地进行编译。但是,对我来说,似乎抛出上述异常的代码路径没有返回值。 private static bool createRecord(String table, IDictionary<String,String> data, System.Data.IDbConnection conn, OdbcTransaction trans) { [... some other code ...] int returnValue = 0; try { command.CommandText = sb.ToString(); returnValue = command.ExecuteNonQuery(); return returnValue == 1; } finally { command.Dispose(); } return false; } 我在这里理解的错误是什么?

15
如何用一个空格替换多个空格
假设我有一个字符串,例如: "Hello how are you doing?" 我想要一个将多个空间变成一个空间的函数。 所以我会得到: "Hello how are you doing?" 我知道我可以使用正则表达式或致电 string s = "Hello how are you doing?".replace(" "," "); 但是我必须多次调用它,以确保所有连续的空格都仅被一个空格替换。 已经有内置的方法了吗?
108 c#  string  whitespace 

11
在不损失任何质量的情况下调整图像大小
在这里很难说出要问什么。这个问题是模棱两可,含糊,不完整,过于宽泛或夸张的,不能以目前的形式合理地回答。如需帮助澄清此问题以便可以重新打开, 请访问帮助中心。 7年前关闭。 如何在不影响图像质量的情况下调整图像尺寸?
108 c#  image  image-scaling 


3
如何从JSON字符串自动生成C#类文件
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 4年前关闭。 改善这个问题 给定以下JSON对象, form = { "name": "", "address": { "street": "", "city": "", "province": "", "postalCode": "", "country": "" }, "phoneDay": "", "phoneCell": "", "businessName": "", "website": "", "email": "" } 什么是自动生成以下C#类的工具? public class ContactInfo { public string Name { get; set; } public Address …
108 c#  json  code-generation 


6
为什么C#接口方法没有声明为抽象或虚拟的?
接口中的C#方法在不使用virtual关键字的情况下被声明,并且在派生类中被覆盖而未使用override关键字。 是否有一个原因?我认为这只是一种语言上的方便,显然CLR知道如何在后台进行处理(默认情况下方法不是虚拟的),但是还有其他技术原因吗? 这是派生类生成的IL: class Example : IDisposable { public void Dispose() { } } .method public hidebysig newslot virtual final instance void Dispose() cil managed { // Code size 2 (0x2) .maxstack 8 IL_0000: nop IL_0001: ret } // end of method Example::Dispose 注意,该方法virtual final在IL中声明。

6
Windows服务中使用的最佳计时器
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我需要创建一些Windows服务,每隔N个时间段执行一次。 问题是: 我应该使用哪个计时器控件:System.Timers.Timer还是System.Threading.Timer一个?它会影响某些东西吗? 我之所以问是因为我听到了很多证据证明System.Timers.TimerWindows服务的工作不正确。 谢谢。

7
自动更新版本号
我希望每个构建版本都可以增加应用程序的version属性,但是我不确定如何在Visual Studio(2005/2008)中启用此功能。我试图将AssemblyVersion指定为1.0。*,但它并不能完全满足我的需求。 我也在使用设置文件,并且在较早的尝试中,当程序集版本更改时,由于应用程序在另一个目录中查找设置文件,因此我的设置被重置为默认设置。 我希望能够以1.1.38的形式显示版本号,因此当用户发现问题时,我可以记录他们正在使用的版本,并告诉他们如果具有旧版本则进行升级。 对于版本控制的简短解释也将不胜感激。版本号和修订号何时增加?

11
解决文件路径过长异常的最佳方法
我创建了一个应用程序,可以下载SP网站中的所有文档库,但有一次它给了我这个错误(我尝试查看Google,但找不到任何东西,现在,如果有人知道解决此问题的任何技巧,请回复,否则,谢谢看看) System.IO.PathTooLongException:指定的路径,文件名或两者都太长。完全限定的文件名必须少于260个字符,目录名称必须少于248个字符。在System.IO.Path.NormalizePathFast(字符串路径,布尔fullCheck)在System.IO.Path.GetFullPathInternal(字符串路径)在System.IO.FileStream.Init(字符串路径,FileMode模式,FileAccess访问,Int32权限,布尔useRights ,FileShare共享,Int32 bufferSize,FileOptions选项,SECURITY_ATTRIBUTES secAttrs,System.IO.FileStream..ctor(字符串路径,FileMode模式,FileAccess访问权限,FileShare共享,Int32 bufferSize,FileOptions选项)位于System.IO.FileStream..ctor。 IO.File.Create(字符串路径) 它达到了字符串的限制,代码如下所示, #region Downloading Schemes private void btnDownload_Click(object sender, EventArgs e) { TreeNode currentNode = tvWebs.SelectedNode; SPObjectData objectData = (SPObjectData)currentNode.Tag; try { CreateLoggingFile(); using (SPWeb TopLevelWeb = objectData.Web) { if(TopLevelWeb != null) dwnEachWeb(TopLevelWeb, TopLevelWeb.Title, tbDirectory.Text); } } catch (Exception ex) { Trace.WriteLine(string.Format("Exception caught when …
108 c#  .net  string  file  sharepoint 

9
减少.NET应用程序的内存使用量?
有什么技巧可以减少.NET应用程序的内存使用?考虑下面的简单C#程序。 class Program { static void Main(string[] args) { Console.ReadLine(); } } 在x64的发布模式下编译并在Visual Studio外部运行,任务管理器报告以下内容: Working Set: 9364k Private Working Set: 2500k Commit Size: 17480k 如果仅针对x86进行编译会更好一些: Working Set: 5888k Private Working Set: 1280k Commit Size: 7012k 然后,我尝试了以下程序,该程序执行相同的操作,但尝试在运行时初始化后减小进程大小: class Program { static void Main(string[] args) { minimizeMemory(); Console.ReadLine(); } private static void …

3
静态方法与实例方法的性能
我的问题与静态方法与实例方法的性能特征及其可伸缩性有关。对于这种情况,假设所有类定义都在单个程序集中,并且需要多个离散的指针类型。 考虑: public sealed class InstanceClass { public int DoOperation1(string input) { // Some operation. } public int DoOperation2(string input) { // Some operation. } // … more instance methods. } public static class StaticClass { public static int DoOperation1(string input) { // Some operation. } public static int DoOperation2(string …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.