我有一个用C#/ .NET编写的控制台应用程序,我想从脚本(nant)运行.如果控制台应用程序中发生异常,我不想继续,但在Windows Vista中有一个弹出窗口,它会搜索解决方案并要求调试等.
当控制台应用程序中发生异常时,我想避免弹出"程序停止工作".如何从C#/ .NET控制它?
(类似的问题解决了C语言的问题,但我想要一个C#/ .NET的解决方案.)
(澄清一下:我希望将异常传递给nant,但没有弹出窗口.)
我尝试将数百万条记录插入到包含20个以上索引的表中.
在上一次运行中,每100,000行需要超过4小时,查询在3½天后被取消...
你对如何提高速度有什么建议吗?
(我怀疑很多索引都是原因.如果您也这么认为,如何在操作之前自动删除索引,然后再次创建相同的索引?)
额外信息:
状态更新:
接受的答案帮助我加快了速度.
如何在.NET中将数字格式化为百分比而不显示百分号?
如果我有数字0.13并使用格式字符串{0:P0}输出13 %.
但是我想13改为,而不必将数字乘以100并使用格式字符串{0:N0}.
(背景:在ASP.NET中,我有一个带有BoundField的GridView,我想在其中显示一个数字,但不显示百分号(%).我该怎么做?)
谢谢你的回答.在编辑时,如上所述,在6个中有4个表示我想要避免的内容.我一直在寻找一种只使用格式字符串的方法,并避免乘以100并使用{0:N0},但答案表明这是不可能的......
使用理查德接受的解决方案解决:
public class MyCulture : CultureInfo
{
public MyCulture()
: base(Thread.CurrentThread.CurrentCulture.Name)
{
this.NumberFormat.PercentSymbol = "";
}
}
Thread.CurrentThread.CurrentCulture = new MyCulture();
Run Code Online (Sandbox Code Playgroud) 我有一个存储过程,从Sql Server Management Studio(2秒)执行速度比运行时System.Data.SqlClient.SqlCommand(2分钟后超时).
这可能是什么原因?
详细信息:在Sql Server Management Studio中,这将在2秒内运行(在生产数据库上):
EXEC sp_Stat
@DepartmentID = NULL
在.NET/C#中,以下在2分钟后超时(在生产数据库上):
string selectCommand = @"
EXEC sp_Stat
@DepartmentID = NULL";
string connectionString = "server=***;database=***;user id=***;pwd=***";
using (SqlConnection connection = new SqlConnection(connectionString))
{
using (SqlCommand command = new SqlCommand(selectCommand, connection))
{
connection.Open();
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我也试图与selectCommand = "sp_Stat",CommandType = StoredProcedure和SqlParameter,但它是同样的结果.
没有EXEC它也是同样的结果.
在几乎数据空的开发数据库中,两个案例都在不到1秒的时间内完成.所以它与数据库中存在大量数据有关,但它似乎只发生在.NET ...
马克·格拉维尔(Marc Gravell)所写的关于不同SET价值观的内容在所呈现的案 …
我想建立从网页到本地文件系统上的文件的链接,并使其在所有浏览器中工作(或者至少在Internet Explorer,Firefox和Chrome中).
例如,以下适用于Internet Explorer:
<a href="\\myserver\doc\info.pdf">Info here</a>
Run Code Online (Sandbox Code Playgroud)
但不适用于Firefox和Chrome.
有没有办法建立一个适用于所有浏览器的链接?
或者使用javascript来检测它是哪个浏览器,然后根据文件名显示相应的链接?
在IIS7中设置ASP.NET网站后,我收到内部服务器错误(500.19),其中显示:
"无法识别的配置路径".
导致此错误的可能原因是什么?
(设置其他ASP.NET网站工作正常,但对于特定网站,它不起作用,我无法弄清楚它们之间的区别.)
详细的错误描述:
错误摘要:
HTTP错误500.19 - 内部服务器错误
无法访问请求的页面,因为页面的相关配置数据无效.详细错误信息:
模块:IIS Web核心
通知:BeginRequest
处理程序:尚未确定
错误代码:0x80070002
配置错误:无法识别的配置路径'MACHINE/WEBROOT/APPHOST/...'
配置文件:
请求的URL:http:// .. .:80 /
物理路径:
登录方法:尚未确定
登录用户:尚未确定
Config来源:
-1:
0:
我想从MSBuild中的字符串中提取数字.
如何使用内置任务或MSBuild.Community.Tasks执行此操作?(RegexMatch可能会这样做,但是如何?)
示例:我有字符串
agent0076
Run Code Online (Sandbox Code Playgroud)
我想把这个数字拿出来,没有前导零:
76
Run Code Online (Sandbox Code Playgroud) 在带有.NET 4 SDK但没有Visual Studio 2010的Windows Server 2003 R2上,我尝试使用构建Visual Studio 2010解决方案
msbuild MySolution.sln /p:RunCodeAnalysis=true
Run Code Online (Sandbox Code Playgroud)
但那失败了.
在这样的环境中运行代码分析需要什么?
我收到此错误消息:
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\CodeAnalysis\Microsoft.CodeAnalysis.targets(129,9): error MSB6003: The specified task executable "FxCopCmd.exe" could not be run. Could not load file or assembly 'Microsoft.VisualStudio.CodeAnalysis.Sdk, Version=10.0.0.0, Culture=neutral, PublicKeyToken= b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
我已经从SDK中安装了FxCop,但幸运的是将变量FxCopDir指向FxCopCmd.exe的安装位置,并将此注册表项设置为该位置:
HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\10.0\Setup\EDev@FxCopDir
Run Code Online (Sandbox Code Playgroud) 是否有一些我不能用ASP.NET MVC做的事情?只有ASP.NET WebForms可以实现的东西,或者使用WebForms 非常容易?
我们考虑将ASP.NET MVC用于新项目.但我想知道,与WebForms相比,是否有一些显而易见的事情我们将无法使用ASP.NET MVC,或者我们将不得不花费大量时间使用ASP.NET MVC.
我想监视sql数据库的索引使用情况,以便找到未使用的索引,然后删除它们.如何最有效地监控索引使用情况?哪些脚本可能有用?
(我知道有关识别未使用对象的问题,但这仅适用于sql server的当前运行.我想监视一段时间内的索引使用情况......)
.net ×2
c# ×2
indexing ×2
sql ×2
sql-server ×2
.net-4.0 ×1
asp.net ×1
asp.net-mvc ×1
build-server ×1
bulkinsert ×1
exception ×1
file-link ×1
fxcop ×1
html ×1
iis-7 ×1
maintenance ×1
msbuild ×1
numbers ×1
popup ×1
regex ×1
sqlcommand ×1
webforms ×1