在我当前的应用程序中,我通过调用T-SQL Update命令执行更新.问题是当时其他用户锁定了同一记录.
在.NET应用程序中,应用程序将等待SQL Server超时,然后它将抛出SqlException超时.
是否可以首先检查特定记录是否被其他进程锁定而不是捕获异常?
c# sql-server sql-server-2005 sql-server-2008 sql-server-2016
基本上我想在FormMain(WindowsForm)上更新ProgressBar UI对象.我使用的是.NET 4.0
以下是Form1.Designer.cs中的代码
namespace ProgressBarApp
{
public partial class Form1 : Form
{
private System.Windows.Forms.ProgressBar curProgressBar;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
CustomProcess theProcess = new CustomProcess();
theProcess.Process();
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是CustomProcess.cs的定义
namespace ProgressBarApp
{
class CustomProcess
{
public void Process()
{
for (int i = 0; i < 10; i++)
{
Task ProcessATask = Task.Factory.StartNew(() =>
{
Thread.Sleep(1000); // simulating a process
}
);
Task UpdateProgressBar = ProcessATask.ContinueWith((antecedent) =>
{
// how …Run Code Online (Sandbox Code Playgroud)