Questions tagged «c#»

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

21
如何解决错误消息:“无法映射路径'/'。”
我已经在Google上搜索了很多东西,但找不到适合我的情况,更不用说解决问题了。尝试导航到我网站中的哪个地址都没有关系(即使不存在的地址也会出现此错误而不是404),但我得到的消息完全相同(路径始终为“ /”)。有任何想法吗? Server Error in '/' Application. Failed to map the path '/'. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.InvalidOperationException: Failed to map …
163 c#  asp.net  iis 

9
使用ASP.NET MVC数据类型属性的电子邮件地址验证
我在验证电子邮件时遇到一些问题。 在我的模型中: [Required(ErrorMessage = "Field can't be empty")] [DataType(DataType.EmailAddress, ErrorMessage = "E-mail is not valid")] public string ReceiverMail { get; set; } 在我看来: <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> @Html.TextBoxFor(m => m.ReceiverMail, new { @placeholder="E-mail"}) <br /> @Html.ValidationMessageFor(m => m.ReceiverMail) 现在,当您将字段留空时,它可以正确显示“字段不能为空”。但是,当您填写无效的电子邮件地址时,例如:“ fwenrjfw”,则该表格不会显示“电子邮件无效”。 如何获取表格以验证输入内容是否为电子邮件地址?我正在为此寻求帮助。

10
在Visual Studio 2010中看到控制台的输出了吗?
我正在编写带有一些输出(Console.WriteLine("...");)的简单C#程序。问题是,每次运行它时,我都不会在输出窗口中看到程序的输出。 已经检查“程序输出”标签,并且我已经将所有输出重定向到中间窗口,但无济于事。 如何启用查看程序的输出? 我认为问题不出在我的代码上。我尝试运行一个简单的程序,该程序仅输出一个字符串和readline“ ala hello world”,但仍然看不到任何输出。问题是我在错误的位置寻找输出,还是Visual Studio无法正常工作。 该debug.write方法也不起作用。 使用debug.Write,这一切都可行,尽管以前没有。在重新启动之前,我遇到了一些麻烦,或者只是需要休息一下,无论哪种方式现在都很好。感谢所有有用的评论=)

10
C#字符串引用类型?
我知道C#中的“字符串”是引用类型。这是在MSDN上。但是,此代码无法正常运行,因此应: class Test { public static void Main() { string test = "before passing"; Console.WriteLine(test); TestI(test); Console.WriteLine(test); } public static void TestI(string test) { test = "after passing"; } } 由于我将字符串作为参数传递并且是引用类型,因此输出应为“传递前”或“传递后”,第二个输出语句应识别出TestI方法中的文本已更改。但是,我得到“通过之前”“通过之前”,似乎它是通过值而不是通过引用传递的。我知道字符串是不可变的,但是我看不出它怎么解释这里发生的事情。我想念什么?谢谢。
163 c#  string  reference  types 

9
在.NET中创建阻塞Queue <T>?
我有一个场景,其中有多个线程添加到队列中,并且有多个线程从同一队列中读取。如果队列达到特定大小,则添加队列时将阻塞正在填充队列的所有线程,直到从队列中删除一项为止。 下面的解决方案是我现在正在使用的解决方案,我的问题是:如何改进?是否有一个对象已经在我应该使用的BCL中启用此行为? internal class BlockingCollection&lt;T&gt; : CollectionBase, IEnumerable { //todo: might be worth changing this into a proper QUEUE private AutoResetEvent _FullEvent = new AutoResetEvent(false); internal T this[int i] { get { return (T) List[i]; } } private int _MaxSize; internal int MaxSize { get { return _MaxSize; } set …


7
何时处置CancellationTokenSource?
该课程CancellationTokenSource是一次性的。快速浏览Reflector即可证明KernelEvent,(很可能是)非托管资源的使用。由于CancellationTokenSource没有终结器,因此如果不处理它,GC将不会这样做。 另一方面,如果您查看MSDN文章“ 托管线程中的取消”中列出的示例,则只有一个代码片段会处理该令牌。 用代码处理它的正确方法是什么? using如果不等待,则无法包装用于启动并行任务的代码。而且只有在您不等待的情况下取消才有意义。 当然,您可以ContinueWith通过Dispose电话添加任务,但这就是方法吗? 可取消的PLINQ查询如何处理,这些查询不同步回去,而只是在最后做一些事情?比方说.ForAll(x =&gt; Console.Write(x))? 可重用吗?可以将同一令牌用于多个调用,然后将其与主机组件(例如UI控件)一起处置吗? 因为它没有像一Reset对清理方法IsCancelRequested和Token字段我想这是不能重复使用,这样每次启动一个任务(或PLINQ查询),你应该创建一个新的。是真的吗 如果是,我的问题是Dispose在那么多CancellationTokenSource实例上处理的正确和推荐策略是什么?

22
如何在C#中将字符串格式化为电话号码
我有一个字符串“ 1112224444”,它是一个电话号码。在将其存储到文件中之前,我想将其格式化为111-222-4444。它位于数据记录中,我希望能够在不分配新字符的情况下执行此操作变量。 我刚在想: String.Format("{0:###-###-####}", i["MyPhone"].ToString() ); 但这似乎并不能解决问题。 **更新** 好。我去了这个解决方案 Convert.ToInt64(i["Customer Phone"]).ToString("###-###-#### ####") 现在,当扩展名少于4位时,它就会混乱。它将从右边填写数字。所以 1112224444 333 becomes 11-221-244 3334 有任何想法吗?

7
.NET中应为无效或意外参数抛出哪些异常?
.NET中应为无效或意外参数引发哪些类型的异常?我什么时候会选择一个而不是另一个? 跟进: 如果您有一个函数期望一个对应于一个月的整数并且传入了'42',那么您将使用哪个异常?即使这不是一个集合,它也会属于“超出范围”类别吗?
163 c#  .net  vb.net  exception 

4
什么是具体化?
我知道Java会擦除地实现参数多态性(泛型)。我了解什么是擦除。 我知道C#通过实现实现了参数多态。我知道那可以让你写 public void dosomething(List&lt;String&gt; input) {} public void dosomething(List&lt;Int&gt; input) {} 或者您可以在运行时知道某些参数化类型的类型参数是什么,但是我不知道它是什么。 什么是改良型? 什么是固定值? 对类型/值进行整形后会发生什么?
163 c#  generics  reification 


12
在Enum中搜索一个字符串并返回Enum
我有一个枚举: public enum MyColours { Red, Green, Blue, Yellow, Fuchsia, Aqua, Orange } 而且我有一个字符串: string colour = "Red"; 我希望能够返回: MyColours.Red 从: public MyColours GetColour(string colour) 到目前为止,我有: public MyColours GetColours(string colour) { string[] colours = Enum.GetNames(typeof(MyColours)); int[] values = Enum.GetValues(typeof(MyColours)); int i; for(int i = 0; i &lt; colours.Length; i++) { …
163 c#  string  enumeration 


11
使用linq将列表转换为字典,而不用担心重复
我有一个Person对象的列表。我想转换为词典,其中键是名和姓(连接),值是Person对象。 问题是我有一些重复的人,因此如果使用以下代码,它会爆炸: private Dictionary&lt;string, Person&gt; _people = new Dictionary&lt;string, Person&gt;(); _people = personList.ToDictionary( e =&gt; e.FirstandLastName, StringComparer.OrdinalIgnoreCase); 我知道这听起来很怪异,但现在我真的不在乎重复的名称。如果有多个名称,我只想取一个。无论如何,我可以在上面编写这段代码,使它只使用名称之一,而不会重复吗?
163 c#  linq  dictionary 


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.