小编Ben*_*ter的帖子

为什么存在字符串的小写和大写版本,我应该使用哪个?

好吧,这可能是一个愚蠢的问题,但我无法找到任何相关信息.

String.Empty和string.Empty是一样的吗?我总是发现自己倾向于使用大写版本(String.Empty),因为我更喜欢我的IDE中的颜色和外观而不是小写版本(string.Empty)...

是否有一种"正确"的方式来使用这些不同或完全取决于个人偏好?这是我的假设,他们都是一样的,但说实话,我从来没有想过任何想法,直到今天无论出于什么原因我都想知道"如果它们都存在,它们必须都存在是有原因的".

是否有一个原因,任何人都知道?如果是这样,它是什么?任何人都可以开导我吗?

PS"完全重复"只回答问题的一半 - "哪个是对的?",而不是"为什么它们都存在?"


确切重复:C#中String和string之间有什么区别?

完全重复:C#中的字符串与字符串

c#

82
推荐指数
5
解决办法
3万
查看次数

有没有办法为每个解决方案制作NuGet Package Source设置?

有没有人知道如何让Visual Studio为每个解决方案而不是在所有解决方案中应用NuGet包源配置?我一直有版本问题因为我在多个项目上工作,每个项目都有自己的私有NuGet存储库.在***中记住哪个NuGet repo属于哪个项目并返回并将正确的项目应用于正确的项目是一件痛苦的事.

visual-studio nuget

65
推荐指数
2
解决办法
2万
查看次数

是否有使用公共API的图像托管服务?

我一直在考虑为一个项目提供图像托管服务,但我开始怀疑这对我的目标受众是否过于复杂,因为他们必须将所有图像上传到托管服务,然后将图像"附加"到CSS文件中使用托管服务提供的链接.虽然对于我们的开发人员来说这是一个相当简单的过程,但我认为这可能是让用户购买此功能的一大障碍.

我可以通过自己托管和提供图像来简化,但我担心可能出现的可扩展性问题,目前我没有硬件或带宽来处理.

我的想法是,我可以让用户将他们的图像和CSS上传到服务器的单个zip文件到Web服务器,然后可以从zip中提取文件,将图像推送到图像托管服务,以编程方式获取相应的URL从服务中获取并相应地更新CSS,然后将其附加到用户的显示配置文件.

这种方法可以一举杀死两只鸟,我不必担心因为在每个配置文件请求上提供潜在的大图像而导致的带宽问题,并且用户不必经历需要设置帐户的麻烦在图像托管服务.

有谁知道我可以编程集成的任何图像托管服务具有良好的可靠性和性能,可以帮助我解决这个难题?

提前致谢

hosting picasa image photobucket

37
推荐指数
4
解决办法
2万
查看次数

有没有理由在现代.NET代码中使用goto?

我刚刚在.NET基础库的反射器中找到了这段代码......

    if (this._PasswordStrengthRegularExpression != null)
    {
        this._PasswordStrengthRegularExpression = this._PasswordStrengthRegularExpression.Trim();
        if (this._PasswordStrengthRegularExpression.Length == 0)
        {
            goto Label_016C;
        }
        try
        {
            new Regex(this._PasswordStrengthRegularExpression);
            goto Label_016C;
        }
        catch (ArgumentException exception)
        {
            throw new ProviderException(exception.Message, exception);
        }
    }
    this._PasswordStrengthRegularExpression = string.Empty;
Label_016C:
    ... //Other stuff
Run Code Online (Sandbox Code Playgroud)

我听说所有的"你都不会因为害怕流亡到永恒的地狱而使用goto".我总是高度重视MS编码员,虽然我可能不同意他们的所有决定,但我始终尊重他们的推理.

那么 - 这样的代码是否有充分的理由让我失踪?这个代码提取是由一个不合格的开发人员组装而成的吗?或.NET反射器返回不准确的代码?

我希望有一个很好的理由,而我只是一味地失踪了.

感谢大家的投入

.net c# goto

31
推荐指数
6
解决办法
4243
查看次数

如何加入子查询的第一行?

我有一张发票表和一张与钥匙有关的相关数据的子表.特别是,对于每个发票,我只对子表中的第一个相关行感兴趣.鉴于我希望每个发票密钥都有一个相关的行 - 我该如何做到这一点?

Select i.[Invoice Number],
       c.[Carrier Name]
From Invoice i
    Left Join Carriers c on i.[InvoiceKey] = c.[InvoiceKey]
Where -- what?
Run Code Online (Sandbox Code Playgroud)

我想在语义上讲,我正在寻找类似于概念的东西Top 1 c.CarrierName Group by InvoiceKey(或者如果在T-SQL中可能的话那将是什么概念.)

我考虑过在子查询上进行左连接,但这看起来效率不高.有没有人有任何T-SQL技巧来有效地实现这一目标?

编辑:对不起,伙计们,我忘了提到这是SQL Server 2000,所以虽然我将放弃当前SQL Server 2005/2008响应的投票,但我不敢接受它们.

t-sql sql-server sql-server-2000

23
推荐指数
1
解决办法
3万
查看次数

有谁知道C#的高级差异工具?

我正在寻找一个diff工具,它可以分析我的代码并告诉我构造基础上构造的变化.

例如,如果我从文件的开头剪切并粘贴一个方法并将其放在最后,但保持该方法不变,我不希望它被标记.但是,如果我在该方法中插入一行代码或更改某些内容,则会将其标记为已更改.

我已经使用了各种各样的差异工具,但是他们似乎都没有告诉你插入,删除或更改了行但却无法以任何逻辑方式分辨出这些变化.如果当我定期重新排列我的代码文件的布局时,diff工具可以跟上,这将是很好的.

有没有人有这样的工具?

.net c# asp.net diff visual-studio

17
推荐指数
3
解决办法
4968
查看次数

我如何作为代表传递财产?

这是一个理论问题,我已经找到了解决问题的方法,这使我走上了不同的道路,但我认为这个问题仍然很有意思.

我可以像对待方法一样将对象属性作为委托传递吗?例如:

假设我有一个数据读取器加载了数据,并且每个字段的值都需要传递到已经检查过DBNull的不同类型的属性中.如果试图获得单个字段,我可能会写如下:

if(!rdr["field1"].Equals(DBNull.Value)) myClass.Property1 = rdr["field1"];
Run Code Online (Sandbox Code Playgroud)

但是,如果我说100个字段,那很快就会变得笨拙.执行此操作的调用有两种方式可能看起来不错:

myClass.Property = GetDefaultOrValue<string>(rdr["field1"]); //Which incidentally is the route I took
Run Code Online (Sandbox Code Playgroud)

作为扩展方法,它看起来也不错:

myClass.Property = rdr["field1"].GetDefaultOrValue<string>();
Run Code Online (Sandbox Code Playgroud)

要么:

SetPropertyFromDbValue<string>(myClass.Property1, rdr["field1"]); //Which is the one that I'm interested in on this theoretical level
Run Code Online (Sandbox Code Playgroud)

在第二个实例中,属性需要作为委托传递才能进行设置.

所以问题分为两部分:

  1. 这可能吗?
  2. 那会是什么样的?

[因为这只是理论上的,VB或C#中的答案对我来说同样可以接受]

编辑:这里有一些光滑的答案.谢谢大家.

.net c# vb.net c#-3.0 c#-4.0

17
推荐指数
4
解决办法
9874
查看次数

如何检测我是否在控制台中运行

是否有一种简单的方法可以让代码库自动检测是否从控制台应用程序或Windows应用程序调用它?我希望我的库不报告Windows事件日志,如果它是从控制台窗口调用,而是报告给控制台窗口.但是,如果它不在控制台窗口中运行,则应报告给Windows事件日志.

我考虑过要求我的日志记录组件传递日志目标,但如果它本身可以自动处理这两个目标,它会很整洁.我还没有需要像log4net这样广泛的东西,事实上,如果有必要提供支持来记录数据库/文件和其他未知的日志记录目标,那么我可能会推荐这样的解决方案.现在,只是让我的组件自动检测环境并根据环境登录到控制台或事件日志就足够了.

.net c# vb.net logging

16
推荐指数
2
解决办法
7867
查看次数

如何在C#中显示指针地址?

自从我用C#编程以来,我没有做过任何指示 - 而且很久以前我的C++时代.我以为我应该刷新我的知识,因为这里有另一个问题,我只是在玩它们.我理解他们都没关系,但我无法弄清楚如何将指针的地址写入控制台......

char c = 'c';
char d = 'd';
char e = 'e';

unsafe
{
    char* cp = &d;
    //How do I write the pointer address to the console?
    *cp = 'f';
    cp = &e;
    //How do I write the pointer address to the console?
    *cp = 'g';
    cp = &c;
    //How do I write the pointer address to the console?
    *cp = 'h';        
}
Console.WriteLine("c:{0}", c); //should display "c:h";
Console.WriteLine("d:{0}", d); //should display "d:f";
Console.WriteLine("e:{0}", e); //should …
Run Code Online (Sandbox Code Playgroud)

c# pointers unsafe

15
推荐指数
1
解决办法
8027
查看次数

每个主要模拟框架的现实利弊是什么?

另请参阅" 为.Net选择模拟框架时应该考虑什么 "

我正在尝试决定在我最近开始使用的.NET项目上使用的模拟框架.我想加快对不同框架的研究.我最近阅读了这篇博客文章http://codevanced.net/post/Mocking-frameworks-comparison.aspx,并想知道是否有任何StackOverflow受众在实际优势的方式和框架的注意事项中添加任何内容.

人们是否可以列出他们目前正在使用或已经调查过自己在.NET项目中使用的模拟框架的优缺点.我认为这不仅有助于我决定当前的项目,还可以帮助其他人在为他们的情况选择正确的框架时做出更明智的决策.我不是任何框架的专家,但我想得到支持和反对我遇到的主要框架的论据:

  • RhinoMocks
  • 起订量
  • TypeMock隔离器
  • NMock

我错过了其他可用的替代品.我也喜欢那些由于问题而转换或停止使用产品的用户的见解.

.net c# rhino-mocks moq mocking

14
推荐指数
1
解决办法
3518
查看次数