.net core 使用Lambda for DotNet Core 5.0 API时,条目程序集名称会发生更改

.net core 使用Lambda for DotNet Core 5.0 API时,条目程序集名称会发生更改,.net-core,aws-lambda,.net Core,Aws Lambda,在我的DotNet web api中,我使用以下语法获取api的基础“名称”(即项目名称): var apiName = System.Reflection.Assembly.GetEntryAssembly().GetName().Name; 我还检查程序集的版本,如下所示: var version = Assembly.GetEntryAssembly().GetCustomAttribute<AssemblyInformationalVersionAttribute>()

在我的DotNet web api中,我使用以下语法获取api的基础“名称”(即项目名称):

var apiName = System.Reflection.Assembly.GetEntryAssembly().GetName().Name;
我还检查程序集的版本,如下所示:

var version = Assembly.GetEntryAssembly().GetCustomAttribute<AssemblyInformationalVersionAttribute>()
            ?.InformationalVersion??"cannot get version";
var version=Assembly.GetEntryAssembly().GetCustomAttribute()
?信息版本??“无法获取版本”;
然而,当在AWS Lambda上运行此程序时,“EntryAssembly”似乎已经更改。“apiName”总是Amazon.Lambda.RuntimeSupport,并且版本总是该库/项目的关联版本,而不是我自己的版本

如何获取正在运行的程序集的版本和“名称”?这可能吗?或者,我需要将它注入到某个地方。

您可以使用
typeof(someclassinyourassembly)。Assembly
也可以使用
GetExecutionGasEmbly