AsyncController 方法声明,有助于理解语法
AsyncController method declarations, assist with understanding syntax
我希望为一些 Web 服务实现异步编码。
我遇到了 a tutorial 并尝试遵循它并实施它,但是我遇到了一个特定的部分。
我的例子
public void CalculatePricingAsync(QuoteInput obj)
{
AsyncManager.OutstandingOperations.Increment();
var apiService = new ApiService();
ApiService.CalculatedPricingCompleted += (sender, e) =>
{
AsyncManager.Parameters["Pricing"] = e.Value;
AsyncManager.OutstandingOperations.Decrement();
};
ApiService.CalculatedPricing(obj);
}
public JsonResult CalculatePricingCompleted(string[] pricing)
{
var jr = new JsonResult { Data = new { pricing } };
return jr;
}
ApiService class 中不存在上述第一种方法中的以下行。谁能解释一下这个表达式的作用及其含义。我是否只是在那个 ApiService class 中创建一个这个名称的方法并将其留空,它是否以某种方式与第二种方法一起工作。我不太清楚它在做什么,应该在哪里声明该方法,以及它到底应该包含什么。
ApiService.CalculatedPricingCompleted += (sender, e) =>
{
AsyncManager.Parameters["Pricing"] = e.Value;
AsyncManager.OutstandingOperations.Decrement();
};
上一行中的这个 > (CalculatedPricingCompleted) 在 visual studio 中显示为红色,显然是在某处定义。
CalculatedPricingCompleted
是ApiService
里面的委托方法。您需要查看服务 class 并添加它。话虽如此,我强烈建议在 .NET 中使用 async / await 进行异步操作。如果您使用的是 .NET 4.0+,没有理由不使用它。
我希望为一些 Web 服务实现异步编码。
我遇到了 a tutorial 并尝试遵循它并实施它,但是我遇到了一个特定的部分。
我的例子
public void CalculatePricingAsync(QuoteInput obj)
{
AsyncManager.OutstandingOperations.Increment();
var apiService = new ApiService();
ApiService.CalculatedPricingCompleted += (sender, e) =>
{
AsyncManager.Parameters["Pricing"] = e.Value;
AsyncManager.OutstandingOperations.Decrement();
};
ApiService.CalculatedPricing(obj);
}
public JsonResult CalculatePricingCompleted(string[] pricing)
{
var jr = new JsonResult { Data = new { pricing } };
return jr;
}
ApiService class 中不存在上述第一种方法中的以下行。谁能解释一下这个表达式的作用及其含义。我是否只是在那个 ApiService class 中创建一个这个名称的方法并将其留空,它是否以某种方式与第二种方法一起工作。我不太清楚它在做什么,应该在哪里声明该方法,以及它到底应该包含什么。
ApiService.CalculatedPricingCompleted += (sender, e) =>
{
AsyncManager.Parameters["Pricing"] = e.Value;
AsyncManager.OutstandingOperations.Decrement();
};
上一行中的这个 > (CalculatedPricingCompleted) 在 visual studio 中显示为红色,显然是在某处定义。
CalculatedPricingCompleted
是ApiService
里面的委托方法。您需要查看服务 class 并添加它。话虽如此,我强烈建议在 .NET 中使用 async / await 进行异步操作。如果您使用的是 .NET 4.0+,没有理由不使用它。