小编FMF*_*MFF的帖子

为什么尝试{...}最终{...}好; 试试{}}抓住{}不好?

我见过有人说使用不带参数的catch是不好的形式,特别是如果catch没有做任何事情:

StreamReader reader=new  StreamReader("myfile.txt");
try
{
  int i = 5 / 0;
}
catch   // No args, so it will catch any exception
{}
reader.Close();
Run Code Online (Sandbox Code Playgroud)

但是,这被认为是好的形式:

StreamReader reader=new  StreamReader("myfile.txt");
try
{
  int i = 5 / 0;
}
finally   // Will execute despite any exception
{
  reader.Close();
}
Run Code Online (Sandbox Code Playgroud)

据我所知,将清理代码放在finally块中并在try..catch块之后放置清理代码之间的唯一区别是,如果你的try块中有return语句(在这种情况下,最后清理代码将是运行,但try..catch之后的代码不会).

否则,最后有什么特别之处?

.net c# exception-handling try-catch try-catch-finally

196
推荐指数
7
解决办法
9万
查看次数

SQL Server存储过程中的可选参数?

我正在SQL Server 2008中编写一些存储过程,并想知道可选输入参数的概念是否可行?

我想我总是可以为我不想使用的参数传递NULL,检查存储过程中的值,然后从那里拿东西,但我感兴趣的是这里有这个概念.谢谢!

stored-procedures optional-parameters sql-server-2008

112
推荐指数
3
解决办法
20万
查看次数

将DataRowCollection转换为IEnumerable <T>

我想在.NET 3.5中做这样的事情.什么是最快的方式?

IEnumerable<DataRow> collection = 
    TypedDataSet.TypedTableBase<DataRow>.Rows as IEnumerable<DataRow>;
Run Code Online (Sandbox Code Playgroud)

.net c# linq ienumerable .net-3.5

61
推荐指数
3
解决办法
4万
查看次数

Netbeans 7 vs Eclipse 3.6 for Java,git和vim

它们都有很多功能并且非常受欢迎,但哪个更好?

为了减少主观答案,请回答以下几点:

  1. 代码重构.

  2. 单元测试,调试.

  3. Git支持.

  4. Vim支持.(可用的插件及其质量,eclim,jVi).

  5. 易于使用(主题支持,格式化,配置,其他插件).

  6. Maven和Ant支持.

  7. 网站开发(玻璃鱼,凹槽,粗粒,弹簧).

  8. 桌面应用开发.(swing,gwt,swt).

  9. 移动开发(Android支持和其他平台)

  10. 游戏开发(哪些引擎有更好的支持,例如Jmonkey使用Netbeans).

  11. 奖金问题:支持其他语言Python,PHP,C++和.

对于IDE运行良好的每一点,你可以给它+1,所以最后:

Netbeans 8

Eclipse 7

结论:哪一个总体更好,您可以选择哪个:

  1. 桌面开发.
  2. Web开发.

附加问题:

主要公司使用哪种IDE?(Google使用eclipse,Oracle使用Netbeans)

java eclipse git vim netbeans

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

ASP.NET中的System.Web.HttpContext.Current.User.Identity.Name与System.Environment.UserName的对比

是什么区别System.Web.HttpContext.Current.User.Identity.Name,并System.Environment.UserName在ASP.Net Web应用程序项目的情况下?

这是我正在尝试做的代码:

Database myDB = DatabaseFactory.CreateDatabase();
bool IsAuthUser = myDB.ExecuteScalar("procIsAuthorizedUser", System.Environment.UserName);
Run Code Online (Sandbox Code Playgroud)

如果它们功能相同,哪个性能更好?

这是一个C#4.0/ASP.Net Web应用程序,它将在组织内部看到适度的使用情况.谢谢你的答案.

c# asp.net httpcontext

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

SQL SELECT使用Null值排序列

我的问题类似于这个问题:如何按代码显示表顺序(如01,02 ...然后是空列)?,但对于SQL Server.

简而言之,我有一个SELECT语句,它返回以下内容:

ColumnA ColumnB
X       NULL
Y       1
Z       2
Run Code Online (Sandbox Code Playgroud)

..其中排序由ColumnB完成.

我们如何强制(columnB = NULL)类型的行到底?即,预期的结果是这样的:

ColumnA ColumnB
Y       1
Z       2
X       NULL
Run Code Online (Sandbox Code Playgroud)

谢谢SOF社区.

sql-server sorting null select sql-order-by

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

意外删除了Xaml文件背后的代码.如何再次添加代码?

我没有错误地排除它,而是删除了文件后面的.cs代码以获取Xaml文件.现在,我不知道如何添加代码.

此窗口为空,没有UI控件."查看代码"已禁用,我无法在此xaml的任何位置看到事件(闪电图标).

请帮忙.

c# wpf xaml code-behind

8
推荐指数
2
解决办法
7872
查看次数

File.Move以外的文件移动方法更快

我有一个控制台应用程序,大约需要625天才能完成.除非有办法让它更快.

首先,我正在一个目录中工作,如果不是更多的话,那里有大约4,000,000个文件.我正在一个数据库中工作,每个文件都有一行,然后是一些.

现在使用SQL相对较快,瓶颈是当我使用File.Move()每个移动需要18秒才能完成.

有比这更快的方式File.Move()吗?

这是瓶颈:

File.Move(Path.Combine(location, fileName), Path.Combine(rootDir, fileYear, fileMonth, fileName));
Run Code Online (Sandbox Code Playgroud)

所有其他代码运行得非常快.我需要做的就是将一个文件移动到一个新位置,然后更新数据库位置字段.

如果需要,我可以显示其他代码,但实际上上面是唯一的当前瓶颈.

c# console-application

8
推荐指数
1
解决办法
4906
查看次数

C#自动属性 ​​- 设置默认值

为C#公共属性设置默认值的最简单/直接的方法是什么?

//如何为此设置默认值?

public string MyProperty { get; set; }
Run Code Online (Sandbox Code Playgroud)

请不要建议我使用私有属性并实现get/set公共属性.试图保持这种简洁,并且不想争论为什么那么好.谢谢.

.net c# automatic-properties default-constructor

6
推荐指数
2
解决办法
552
查看次数

在条件范围内声明隐式类型变量并在外部使用它

在下面的简化代码中,

if(city == "New York City")
{
  var MyObject = from x in MyEFTable
                     where x.CostOfLiving == "VERY HIGH"
                     select x.*;

}
else
{
  var MyObject = from x in MyEFTable
                     where x.CostOfLiving == "MODERATE"
                     select x.*;

}

  foreach (var item in MyObject)
  {
     Console.WriteLine("<item's details>");
  }
Run Code Online (Sandbox Code Playgroud)

在条件块之外无法访问变量MyObject.我怎样才能在if..else之外迭代?

c# foreach var implicit-typing conditional-statements

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