Questions tagged «.net»

请勿使用有关.NET Core的问题,而应使用[.net-core]。.NET框架是主要为Microsoft Windows操作系统设计的软件框架。它包括基类库,公共语言运行时(通常称为CLR),公共类型系统(通常称为CTS)和动态语言运行时的实现。它支持多种编程语言,包括C#,VB.NET,F#和C ++ / CLI。

4
.NET中字节的文字后缀?
我想知道是否有任何方法可以像floats或doubles这样简短地声明字节变量?我的意思是5f和5d。当然可以写byte x = 5,但是如果var用于局部变量,那有点无关紧要。
162 c#  .net  value-type 

8
Collection <T>与List <T>在界面上应使用什么?
代码如下所示: namespace Test { public interface IMyClass { List&lt;IMyClass&gt; GetList(); } public class MyClass : IMyClass { public List&lt;IMyClass&gt; GetList() { return new List&lt;IMyClass&gt;(); } } } 当我运行代码分析时,我得到以下建议。 警告3 CA1002:Microsoft.Design:将“ IMyClass.GetList()”中的“列表”更改为使用Collection,ReadOnlyCollection或KeyedCollection 我应该如何解决这个问题,这是什么好的做法?

7
关闭并处置-呼叫哪个?
阅读线程SqlCommand.Dispose是否足够?以及关闭和处置WCF服务我想知道诸如SqlConnection之类的类还是从Stream类继承的几个类之一,如果我关闭Dispose而不是Close会不会很重要?
161 .net 

5
.NET正则表达式中的“组”和“捕获”之间有什么区别?
对于.NET的正则表达式语言,“组”和“捕获”之间的区别让我有些模糊。考虑以下C#代码: MatchCollection matches = Regex.Matches("{Q}", @"^\{([A-Z])\}$"); 我希望这会导致字母'Q'的单个捕获,但是如果我打印返回的属性,则会MatchCollection看到: matches.Count: 1 matches[0].Value: {Q} matches[0].Captures.Count: 1 matches[0].Captures[0].Value: {Q} matches[0].Groups.Count: 2 matches[0].Groups[0].Value: {Q} matches[0].Groups[0].Captures.Count: 1 matches[0].Groups[0].Captures[0].Value: {Q} matches[0].Groups[1].Value: Q matches[0].Groups[1].Captures.Count: 1 matches[0].Groups[1].Captures[0].Value: Q 这到底是怎么回事?我知道整个比赛也都有机会,但是小组如何进入?为什么不matches[0].Captures包括字母“ Q”的捕获?
161 c#  .net  regex 


5
C#交互式窗口可以与我的代码进行交互吗?
在Visual Studio 2015或更高版本中,我可以打开“ C#交互式窗口”,然后运行代码: &gt; 5 + 3 8 那很可爱。现在我该如何交互我的代码(我的类)?假设我有一个开放的项目。 &gt; new Cog() (1,5): error CS0246: The type or namespace name 'Cog' could not be found (are you missing a using directive or an assembly reference?)
161 c#  .net  visual-studio  roslyn 

7
如何获取ClickOnce应用程序的文件夹路径
我需要在控制台ClickOnce .application(可执行文件)所在的同一文件夹中写入文件。从中启动的文件夹。 我尝试使用Application.StartupPath&Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) 但路径指向的子文件夹c:\Documents &amp; Settings。我如何获得.application居住者所在的路径?
160 .net  windows  clickonce 

15
通过数字索引访问Dictionary.Keys键
我正在使用,Dictionary&lt;string, int&gt;其中int是键的计数。 现在,我需要访问字典中最后插入的键,但是我不知道它的名称。显而易见的尝试: int LastCount = mydict[mydict.keys[mydict.keys.Count]]; 不起作用,因为Dictionary.Keys未实现[] -indexer。 我只是想知道是否有类似的课程?我考虑过使用堆栈,但是只存储一个字符串。我现在可以创建自己的结构,然后使用Stack&lt;MyStruct&gt;,但是我想知道是否还有另一种选择,本质上是在Keys上实现[] -indexer的Dictionary?
160 c#  .net  dictionary 

14
NAnt或MSBuild,何时选择哪个?
我知道关于堆栈溢出还有其他与NAnt和MSBuild有关的问题,但是我找不到两者之间的直接比较,所以这里是问题。 什么时候应该选择NAnt而不是MSBuild?哪个更适合?NAnt是否更适用于家庭/开源项目以及适用于工作项目的MSBuild?两者的经验是什么?
160 .net  msbuild  automation  nant 

16
如何在.Net中的lambda表达式中发音“ =>”
我很少遇到其他程序员! 当我第一次看到令牌时,我的想法是“暗示”,因为这就是它在数学证明中的读法,但这显然不是它的意义。 因此,我该如何说或读“ =&gt;”,如: IEnumerable&lt;Person&gt; Adults = people.Where(p =&gt; p.Age &gt; 16) 还是有一种商定的说法?
160 c#  .net  lambda  conventions 

5
以下LINQ语句如何工作?
以下LINQ语句如何工作? 这是我的代码: var list = new List&lt;int&gt;{1,2,4,5,6}; var even = list.Where(m =&gt; m%2 == 0); list.Add(8); foreach (var i in even) { Console.WriteLine(i); } 输出: 2, 4, 6, 8 为什么不2, 4, 6呢?
160 c#  .net  linq 

30
.NET模糊处理工具/策略
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 改善这个问题 我的产品包含几个组件:ASP.NET,Windows Forms App和Windows Service。95%左右的代码是用VB.NET编写的。 出于知识产权的原因,我需要对代码进行混淆处理,直到现在为止,我一直在使用dotfuscator版本,该版本现已使用5年以上。我认为现在是时候使用新一代工具了。我正在寻找的是在寻找新的混淆器时应考虑的要求列表。 我知道到目前为止我应该寻找的是: 序列化/反序列化。在我当前的解决方案中,我只是告诉该工具不要混淆任何类数据成员,因为无法加载以前已序列化的数据的痛苦实在太大了。 与构建过程集成 使用ASP.NET。过去,由于更改.dll名称(每页通常有一个),我发现这是有问题的-并非所有工具都能很好地处理。


2
String.Equals(a,b)如何不产生StackOverflowException?
在检查String ==运算符时,我注意到它调用String.Equals(string a, string b),这意味着它只是一个传递。 检查该String.Equals(string a, string b)方法,我发现它使用==运算符进行相等性检查。这实际上是如何工作的,并且StackOverflowException在执行诸如"x" == "x"或之类的操作时不会引起"x" == "y"? 更新:我让JetBrains知道了,他们将其作为dotPeek的关键优先事项。https://youtrack.jetbrains.com/issue/DOTP-6789 我还在ILSpy的GitHub存储库中添加了一个问题。
159 c#  .net 

13
Log4net不写入日志文件
我使用Log4net创建了一个简单的方案,但是由于消息未添加到日志文件中,所以我的附加程序似乎无法正常工作。 我将以下内容添加到web.config文件中: &lt;configSections&gt; &lt;section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" requirePermission="false"/&gt; &lt;/configSections&gt; &lt;log4net&gt; &lt;appender name="LogFileAppender" type="log4net.Appender.FileAppender"&gt; &lt;file value="D:\MyData\Desktop\LogFile.txt" /&gt; &lt;appendToFile value="true" /&gt; &lt;encoding value="utf-8" /&gt; &lt;layout type="log4net.Layout.SimpleLayout" /&gt; &lt;/appender&gt; &lt;root&gt; &lt;level value="INFO" /&gt; &lt;appender-ref ref="LogFileAppender" /&gt; &lt;/root&gt; &lt;/log4net&gt; 在全局ASAX文件中,我添加了: ILog logger = LogManager.GetLogger(typeof(MvcApplication)); 在Application_Start方法中: logger.Info("Starting the application..."); 我做错什么了?
159 c#  .net  asp.net  logging  log4net 

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.