小编Mar*_*kyi的帖子

c# - 尝试在执行代码时处理任务

当“worker”正在执行一段代码时,我正在关闭整个窗口,并且我想在关闭该窗口时处理它,因为它正在完成它的代码。

Task  worker = Task.Factory.StartNew(new Action(() =>
{ 
    // some code here
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,当我调用时worker.Dispose()出现Close()异常:

仅当任务处于完成状态(RanToCompletion、Faulted 或 Canceled)时才可以处置任务

有什么建议我可以在它工作时处理它吗?

c#

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

是否有可能将变量的名称作为`params object []`传递?

我想知道,是否有可能获得传递给方法的变量名称params object[] values

方法的签名如下所示:

public static void ExecuteSafely(
    Action callback,
    string command,
    params object[] values)
{
    // code here
}
Run Code Online (Sandbox Code Playgroud)

我试图获得价值nameof(values[index]),但它告诉我:

表达式没有名称.

这一点的关键是动态地向SQL命令添加参数,如果我可以根据参数的名称添加参数,那么传递它会更容易,参数更少,但这些参数的数量应该是可变的.

你能推荐任何解决方案或其他方法吗?

.net c#

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

标签 统计

c# ×2

.net ×1