小编lom*_*axx的帖子

3015
推荐指数
32
解决办法
128万
查看次数

在C#中调用基础构造函数

如果我从一个基类继承并希望将继承类的构造函数中的某些东西传递给基类的构造函数,我该怎么做?

例如,

如果我从Exception类继承,我想做这样的事情:

class MyExceptionClass : Exception
{
     public MyExceptionClass(string message, string extraInfo)
     {
         //This is where it's all falling apart
         base(message);
     }
}
Run Code Online (Sandbox Code Playgroud)

基本上我想要的是能够将字符串消息传递给基本的Exception类.

c# inheritance constructor

1398
推荐指数
11
解决办法
98万
查看次数

使用LINQ更新集合中的所有对象

有没有办法使用LINQ执行以下操作?

foreach (var c in collection)
{
    c.PropertyToSet = value;
}
Run Code Online (Sandbox Code Playgroud)

为了澄清,我想迭代集合中的每个对象,然后更新每个对象的属性.

我的用例是我在博客文章中有一堆评论,我想在博客文章中迭代每个评论,并将博客帖子上的日期时间设置为+10小时.我可以在SQL中完成它,但我想将它保留在业务层中.

.net c# linq foreach

460
推荐指数
10
解决办法
46万
查看次数

SQL Management Studio的SQL Formatter

我想知道是否有一个SQL Server Management Studio的插件/工具可以格式化你的SQL?

我正在处理一些大型存储过程,这些过程是格式错误的SQL格式错误,如果我可以选择"全选 - >格式化SQL",那就太好了.

sql formatting ssms

240
推荐指数
10
解决办法
29万
查看次数

如何从C#数组中删除重复项?

我一直在处理string[]从函数调用返回的C#中的数组.我可以投射到一个Generic集合,但我想知道是否有更好的方法,可能通过使用临时数组.

从C#数组中删除重复项的最佳方法是什么?

c# arrays duplicates

201
推荐指数
13
解决办法
30万
查看次数

了解LINQ

概观

LINQ,我在网站上提出了很多问题.我提出的问题范围广泛而且多种多样,往往背后没有太多背景.因此,为了巩固我在Linq上获得的知识,我发布了这个问题,以便在我继续学习LINQ时使用其他信息来维护和更新它.

我也希望它能够成为想要了解LINQ的其他人的有用资源.

什么是LINQ?

来自MSDN:

LINQ项目是.NET Framework的一组扩展的代号,包含语言集成的查询,设置和转换操作.它使用本机语言语法扩展C#和Visual Basic,并提供类库以利用这些功能.

这意味着LINQ提供了一种使用通用语法查询各种数据源的标准方法.

LINQ有哪些口味?

目前,Microsoft提供了一些不同的LINQ提供程序:

还有很多其他的,其中许多列在这里.

有什么好处?

  • 查询多个数据源的标准化方法
  • 编译查询的时间安全性
  • 在内存对象中执行基于集合的操作的优化方法
  • 能够调试查询

那么LINQ怎么办?

Chook提供了一种输出CSV文件的方法
Jeff显示了如何从数组中删除重复项
Bob 从数据表中获取一个不同的有序列表
Marxidad显示了如何对数组进行排序
Dana获得了使用Linq实现快速排序的帮助

从哪儿开始?

GateKiller的问题链接摘要如下:
Scott Guthrie 在他的博客上为Linq提供了一个介绍MSDN
LINQ的概述

ChrisAnnODell建议退房:

linq linq-to-objects linq-to-entities linq-to-sql

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

为什么我不能在C#中使用抽象静态方法?

我最近一直与提供商合作,我遇到了一个有趣的情况,我希望有一个抽象的静态方法.我读了一些关于这个主题的帖子,这有点意义,但有一个很清楚的解释吗?

.net c# language-design

175
推荐指数
8
解决办法
10万
查看次数

String.Format与StringBuilder一样高效

假设我在C#中有一个stringbuilder来执行此操作:

StringBuilder sb = new StringBuilder();
string cat = "cat";
sb.Append("the ").Append(cat).(" in the hat");
string s = sb.ToString();
Run Code Online (Sandbox Code Playgroud)

那将是有效的或更高效的:

string cat = "cat";
string s = String.Format("The {0} in the hat", cat);
Run Code Online (Sandbox Code Playgroud)

如果是这样,为什么?

编辑

在一些有趣的答案之后,我意识到我可能应该对我的要求更加清楚.我没有那么多要求连接字符串哪个更快,但是一个字符串注入另一个字符串更快.

在上面两种情况下,我想将一个或多个字符串注入预定义模板字符串的中间.

对困惑感到抱歉

c# vb.net performance stringbuilder string.format

157
推荐指数
7
解决办法
6万
查看次数

从try catch finally块中返回是不好的做法吗?

所以今天早上我遇到了一些看起来像这样的代码:

try
{
    x = SomeThingDangerous();
    return x;
}
catch (Exception ex)
{
    throw new DangerousException(ex);
}
finally
{
    CleanUpDangerousStuff();
}
Run Code Online (Sandbox Code Playgroud)

现在这段代码编译得很好并且可以正常工作,但是从try块中返回它感觉不对,特别是如果最终有关联的话.

我的主要问题是如果最终抛出它自己的例外会发生什么?你有一个返回的变量,但也有一个例外来处理...所以我有兴趣知道其他人在try块中返回的想法?

c# try-catch try-catch-finally

126
推荐指数
5
解决办法
7万
查看次数

找不到导入的项目"C:\ Microsoft.CSharp.targets"

我尝试在Visual Studio 2005中打开Visual Studio 2008 项目时遇到此错误:

找不到导入的项目"C:\ Microsoft.CSharp.targets".

c# visual-studio

123
推荐指数
7
解决办法
13万
查看次数