Questions tagged «c#»

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


6
Visual Studio警告级别的含义?
在Web应用程序项目的“构建”选项卡上,我有一个名为“警告级别”的设置。我可以在0到4之间设置一个值。这些值是什么意思?值0会更严格并生成更多警告吗,反之亦然?我还没有找到任何文档,但是也许我找错了地方。

3
C#调试:[DebuggerDisplay]还是ToString()?
有两种方法可以提高调试信息的有效性,而不是{MyNamespace.MyProject.MyClass}在调试器中查看。 这些是DebuggerDisplayAttribute和ToString()方法的使用。 using System.Diagnostics; ... [DebuggerDisplay("Name = {Name}")] public class Person { public string Name; } 要么 public class Person { public string Name; public override string ToString() { return string.Format("Name = {0}", Name); } } 有什么理由更喜欢另一种吗?有什么理由不做这两件事?纯粹是个人喜好吗?

9
结构实现接口安全吗?
我似乎还记得读过一些有关结构如何通过C#在CLR中实现接口的弊端,但是我似乎找不到任何东西。不好吗 这样做会有意想不到的后果吗? public interface Foo { Bar GetBar(); } public struct Fubar : Foo { public Bar GetBar() { return new Bar(); } }
92 c#  interface  struct 

4
序列化字典时保留大小写
我有一个这样配置的Web Api项目: config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); 但是,我希望字典键大小写保持不变。Newtonsoft.Json我可以在类中使用任何属性来表示我希望在序列化期间大小写保持不变吗? public class SomeViewModel { public Dictionary<string, string> Data { get; set; } }
92 c#  json.net 

4
.NET中“ HttpRequest.RequestType”和“ WebRequest.Method”值的常量在哪里?
我需要检查RequestType的HttpRequest在ASP.NET(或WebRequest.Method)。我知道我可以只将字符串值“ POST”或“ GET”用于请求类型,但是我可能发誓在.NET中某个类中的某个地方包含一个常量,这些常量包含这些值。 出于好奇,我想知道是否有人知道这些字符串常量用于什么类,GET并且POST在其中。我曾尝试在线搜索,但没有运气,所以我想在这里问。
92 c#  .net  asp.net 

12
从InnerException获取所有消息?
有什么方法可以编写LINQ样式的“简写”代码,以遍历所有级别的抛出InnerException的异常?我宁愿就地编写它,而不是调用扩展函数(如下所示)或继承Exception该类。 static class Extensions { public static string GetaAllMessages(this Exception exp) { string message = string.Empty; Exception innerException = exp; do { message = message + (string.IsNullOrEmpty(innerException.Message) ? string.Empty : innerException.Message); innerException = innerException.InnerException; } while (innerException != null); return message; } };
92 c#  c#-4.0 


11
在void方法中使用return是不好的做法吗?
想象以下代码: void DoThis() { if (!isValid) return; DoThat(); } void DoThat() { Console.WriteLine("DoThat()"); } 在void方法内使用return可以吗?它有性能损失吗?或者编写这样的代码会更好: void DoThis() { if (isValid) { DoThat(); } }
92 c#  return  void 

10
如何使用实体框架获取列的最大值?
要获取包含整数的列的最大值,我可以使用以下T-SQL命令 SELECT MAX(expression ) FROM tables WHERE predicates; 是否有可能使用实体框架获得相同的结果。 假设我有以下模型 public class Person { public int PersonID { get; set; } public int Name { get; set; } public int Age { get; set; } } 如何获得最大的年龄? int maxAge = context.Persons.?
92 c#  sql  entity-framework  max 

2
在C#中,您可以为具有名称的值元组定义别名吗?
我知道可以使用using关键字在C#中定义别名。 例如 using ResponseKey = System.ValueTuple<System.Guid, string, string>; 但是,是否可以对值元组使用新语法来定义一个? using ResponseKey = (Guid venueId, string contentId, string answer); 此语法似乎不起作用。应该是?
92 c#  c#-7.0 

6
我们可以创建自定义HTTP状态代码吗?
我有REST和WCF服务,并希望根据操作发送自定义状态代码。 例如,当某些验证失败时,我想发送HTTP 444;当授权失败时,我想发送HTTP 455 问题是我们如何对SOAP和REST Web服务进行验证。 在客户端上,错误代码如何起作用,因为当您从WCF服务发送HTTP 400/500(使用SOAP)时,客户端上会抛出一个异常,显示状态代码。 现在,如果我发送新的自定义状态代码,客户端将如何处理?
92 c#  asp.net  wcf  http  wcf-rest 

5
.NET Core身份服务器4身份验证VS身份身份验证
我试图了解在ASP.NET Core中进行身份验证的正确方法。我看了几个资源(其中大多数已过时)。 微软身份的简单实现 ASP.Core身份验证简介 MSDN身份简介 有人提供替代性解决方案,说明使用基于云的解决方案(例如Azure AD)或使用IdentityServer4并托管我自己的令牌服务器。 在旧版本的.Net中,身份验证的一种较简单形式是创建自定义原则,并在其中存储其他身份验证用户数据。 public interface ICustomPrincipal : System.Security.Principal.IPrincipal { string FirstName { get; set; } string LastName { get; set; } } public class CustomPrincipal : ICustomPrincipal { public IIdentity Identity { get; private set; } public CustomPrincipal(string username) { this.Identity = new GenericIdentity(username); } …

5
调试期间的Visual Studio:函数评估需要所有线程才能运行
调试时突然出现一个奇怪的错误。到目前为止,监视窗口中的变量已正确显示。现在,我总是在监视窗口中看到错误消息: 函数评估要求所有线程都运行 我无法检查任何变量了。我没有明确使用线程。我该怎么做才能使其恢复正常工作? 我已经禁用了某些论坛中提到的功能:调试器的选项窗口中的“启用属性评估和其他隐式函数调用”。但是没有成功,那么我得到了错误: 用户禁用错误隐式函数评估


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.