Questions tagged «c#»

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

12
多次抛出“缺少编译器所需成员”错误,几乎没有对代码进行任何更改
今天,在将一些更改部署到我运行的C#MVC站点后,我回去进行了一些修改,并遇到了此错误: 缺少编译器所需的成员System.Runtime.CompilerServices.ExtensionAttribute..ctor 该错误有点含糊(显然不是其描述),因为它没有给我文件,行或列供参考,仅给我项目。另外,它总共抛出20次错误。从我部署到现在(该功能完全正常)之间,我仅对代码进行了三处更改。我恢复了更改,但仍然抛出相同的错误,这对我来说毫无意义。 除了这种解决方案以及一些关于某些Mono项目错误的引用(我没有使用Mono),我没有在SO或Google上找到关于此错误的大量信息。上面那个家伙给出的解决方案需要添加一个类定义,该类定义将允许编译器解析引用。我并不想这样做,因为直到现在我都不需要这样做,这只会使我的代码变得混乱。 只是好奇是否有人遇到过这个问题。提前致谢!
94 c#  asp.net-mvc 

6
如何在文件中保存/恢复可序列化对象?
我有一个对象列表,需要将其保存在计算机中的某个位置。我已经阅读了一些论坛,我知道对象必须是Serializable。但是,如果我能举个例子,那就太好了。例如,如果我有以下内容: [Serializable] public class SomeClass { public string someProperty { get; set; } } SomeClass object1 = new SomeClass { someProperty = "someString" }; 但是,如何将其存储object1在计算机中的某个地方,然后再取回呢?


5
如何使用LINQ将List <string>中的所有字符串转换为小写?
我昨天在StackOverflow上的其中一个响应中看到了一个代码片段,这引起了我的兴趣。就像这样: List&lt;string&gt; myList = new List&lt;string&gt; {"aBc", "HELLO", "GoodBye"}; myList.ForEach(d=&gt;d.ToLower()); 我希望可以使用它将myList中的所有项目转换为小写。但是,这不会发生...运行此命令后,myList中的大小写不变。 所以我的问题是,是否有一种方法可以使用LINQ和Lambda表达式以类似的方式轻松地遍历和修改列表的内容。 谢谢,马克斯
94 c#  linq  lambda  foreach 

11
结合多个元素集合的优雅方式?
假设我有任意数量的集合,每个集合都包含相同类型的对象(例如List&lt;int&gt; foo和List&lt;int&gt; bar)。如果这些集合本身是一个集合(例如类型)List&lt;List&lt;int&gt;&gt;,则可以SelectMany将它们全部组合成一个集合。 但是,如果这些集合不在同一个集合中,给我的印象是我必须编写这样的方法: public static IEnumerable&lt;T&gt; Combine&lt;T&gt;(params ICollection&lt;T&gt;[] toCombine) { return toCombine.SelectMany(x =&gt; x); } 然后我会这样称呼它: var combined = Combine(foo, bar); 是否有一种干净,优雅的方式来组合(任意数量)集合,而不必编写上述实用程序方法Combine?看起来很简单,应该可以在LINQ中做到这一点,但也许不是。

7
免费FTP库[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 6年前关闭。 改善这个问题 您可以为C#推荐一个免费的FTP库(类)吗? 该课程必须写得很好,并且必须表现良好。
94 c#  ftp 

13
C#vs C-巨大的性能差异
我发现C anc C#中相似代码之间存在巨大的性能差异。 C代码是: #include &lt;stdio.h&gt; #include &lt;time.h&gt; #include &lt;math.h&gt; main() { int i; double root; clock_t start = clock(); for (i = 0 ; i &lt;= 100000000; i++){ root = sqrt(i); } printf("Time elapsed: %f\n", ((double)clock() - start) / CLOCKS_PER_SEC); } C#(控制台应用程序)为: using System; using System.Collections.Generic; using System.Text; namespace …
94 c#  c  performance 

10
如何比较“相似”的Unicode字符?
我陷入一个令人惊讶的问题。 我在应用程序中加载了一个文本文件,并且有一些逻辑比较具有µ的值。 我意识到即使文本相同,比较值也是错误的。 Console.WriteLine("μ".Equals("µ")); // returns false Console.WriteLine("µ".Equals("µ")); // return true 在后面的行中,字符µ被复制粘贴。 但是,这些可能不是唯一的类似字符。 C#中有什么方法可以比较看起来相同但实际上不同的字符?

10
如何在C#中删除字符串中的最后一个字符?
通过以下方式为发布请求构建字符串, var itemsToAdd = sl.SelProds.ToList(); if (sl.SelProds.Count() != 0) { foreach (var item in itemsToAdd) { paramstr = paramstr + string.Format("productID={0}&amp;", item.prodID.ToString()); } } 我得到产生后paramstr,我需要删除最后一个字符&amp;在它 如何使用C#删除字符串中的最后一个字符?
94 c#  string 

6
MVC Razor视图嵌套了foreach的模型
想象一个常见的场景,这是我遇到的一个简单的版本。实际上,我在我上还有几层进一步的嵌套。 但这是场景 主题包含列表类别包含列表产品包含列表 我的控制器提供了一个完全填充的主题,其中包含该主题的所有类别,此类别中的产品及其订单。 订单集合具有一个名为“数量”(在其他属性中)的属性,需要对其进行编辑。 @model ViewModels.MyViewModels.Theme @Html.LabelFor(Model.Theme.name) @foreach (var category in Model.Theme) { @Html.LabelFor(category.name) @foreach(var product in theme.Products) { @Html.LabelFor(product.name) @foreach(var order in product.Orders) { @Html.TextBoxFor(order.Quantity) @Html.TextAreaFor(order.Note) @Html.EditorFor(order.DateRequestedDeliveryFor) } } } 如果我改用lambda,那么我似乎只获得对顶级Model对象“ Theme”的引用,而不是foreach循环中的那些对象。 我正在尝试做的事情甚至可能吗?或者我高估或误解了什么可能? 有了上述,我在TextboxFor,EditorFor等错误 CS0411:无法从用法中推断方法'System.Web.Mvc.Html.InputExtensions.TextBoxFor(System.Web.Mvc.HtmlHelper,System.Linq.Expressions.Expression&gt;)'的类型参数。尝试显式指定类型参数。 谢谢。

20
DeploymentItem属性存在问题
我目前正在维护用C#.net编写的“旧”系统,删除一些过时的功能并进行一些重构。谢谢上帝,以前的家伙写了一些单元测试(MSTests)。我对JUnit测试相当满意,但对MSTest并没有做太多事情。 测试方法具有一个DeploymentItem属性,该属性指定一个文本文件(该文件由要测试的业务逻辑方法解析)和第二个属性,DeploymentItem其中仅指定了一个路径,其中包含一堆也必须部署的TIF文件。 [TestMethod()] [DeploymentItem(@"files\valid\valid_entries.txt")] [DeploymentItem(@"files\tif\")] public void ExistsTifTest() { ... } 测试以前可以进行,但是现在我不得不更改\ files \ tif目录中包含的TIF文件的名称。根据规则,TIF文件名必须匹配某个模式,该模式也由该ExistsTifTest()方法检查。现在,我不得不更改文件名以使其适应新要求,并且突然之间,不再像以前那样部署TIF文件。 有人可以给我提示为什么会发生这种情况或可能是什么原因吗?如果在测试方法中具有相应DeploymentItem属性的\ files \ valid \目录中的“ valid_entries.txt”旁边添加一个新的文本文件,例如“ my2ndTest.txt”,也会发生相同的情况。文件未部署? 我现在通过直接在testrunco​​nfig中定义部署路径来部署映像,但是我想了解为什么会发生这些事情,或者为什么为什么我的新文件“ my2ndTest.txt”没有被部署,而其他文件却被部署了。

5
C#和Java三元运算符(?:)之间的区别
我是C#新手,刚遇到问题。处理三元运算符(? :)时,C#和Java之间有所不同。 在以下代码段中,为什么第四行不起作用?编译器显示错误消息there is no implicit conversion between 'int' and 'string'。第五行效果不佳。两者List都是对象,不是吗? int two = 2; double six = 6.0; Write(two &gt; six ? two : six); //param: double Write(two &gt; six ? two : "6"); //param: not object Write(two &gt; six ? new List&lt;int&gt;() : new List&lt;string&gt;()); //param: not object …


7
我可以对Dictionary <TKey,TValue>条目使用集合初始化程序吗?
我想在下一段代码中使用集合初始化程序: public Dictionary&lt;int, string&gt; GetNames() { Dictionary&lt;int, string&gt; names = new Dictionary&lt;int, string&gt;(); names.Add(1, "Adam"); names.Add(2, "Bart"); names.Add(3, "Charlie"); return names; } 所以通常应该是这样的: return new Dictionary&lt;int, string&gt; { 1, "Adam", 2, "Bart" ... 但是正确的语法是什么?

30
您使用什么C#ReSharper 4+实时模板?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或进一步的讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 您使用什么C# ReSharper 4.0模板? 让我们以以下格式分享这些内容: [标题] 可选说明 快捷方式:快捷方式 可用于: [AvailabilitySetting] // Resharper template code snippet // comes here 宏属性(如果存在): Macro1-值-EditableOccurence Macro2-值-EditableOccurence 请每个答案一个宏! 以下是一些NUnit测试装置和独立NUnit测试用例的示例,这些示例以建议的格式描述了实时模板。

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.