viv*_*una -1 c# generics azure azure-storage azure-functions
我要求我必须TEntity在课堂上使用.但是在将Generics与类一起使用时,Azure功能无法正常工作.它甚至没有在控制台上显示.但是,如果我TEntity从类声明中删除它在控制台中显示.所以这不受支持吗?或者有任何解决方法吗?我在互联网上搜索过但发现与此无关.
public static class DataFilesIngestJobs<TEntity>
{
[FunctionName("IngestDataFilesScheduled")]
public static async Task RunScheduleAsync(
[TimerTrigger("%DataFiles:IngestJob:ScheduleExpressionTrigger%")] TimerInfo timer,
ExecutionContext context,
TraceWriter log)
{
await RunAsync(context, log);
}
[FunctionName("IngestDataFilesOnDemand")]
public static async Task RunOnDemandAsync(
[QueueTrigger("%DataFiles:IngestJob:OnDemandQueueNameTrigger%", Connection = "ConnectionStrings:BlobStorageAccount")] string queueItem,
ExecutionContext context,
TraceWriter log)
{
await RunAsync(context, log);
}
}
Run Code Online (Sandbox Code Playgroud)
TEntity从类中删除时的控制台输出.
找到了以下功能:[3/21/2018 6:52:41 AM] MyCompany.MyProject.DataFilesIngestJobs.RunScheduleAsync [3/21/2018 6:52:41 AM] MyCompany.MyProject.DataFilesIngestJobs.RunOnDemandAsync
WebJobs SDK在搜索FunctionName属性时显式丢弃泛型类型:
return type.IsClass
&& (!type.IsAbstract || type.IsSealed)
&& type.IsPublic
&& !type.ContainsGenericParameters;
Run Code Online (Sandbox Code Playgroud)
看源代码.
我想那是因为他们在调用函数方法时不知道哪个类型用作泛型参数.