Как сохранить атрибуты сборки в сборке ASP. NET Core 2.1? - PullRequest
0 голосов
/ 24 февраля 2020

Я использую общие атрибуты сборки, а также настраиваемые атрибуты сборки для некоторых целей отслеживания (например, уникальный идентификатор продукта / сборки для проверки обновления версии).

Я написал небольшое приложение, чтобы показать мне некоторые атрибуты сборки для. NET сборок в целях отладки.

string filepath = openFileDialog1.FileName;
Assembly assembly = Assembly.LoadFrom(filepath);
AssemblyPathLabel.Text = filepath;
string assemblyGuid = string.Empty;
try { assemblyGuid = ((GuidAttribute)assembly.GetCustomAttribute(typeof(GuidAttribute))).Value; }
catch { }
string assemblyTitle = string.Empty;
try { assemblyTitle = ((AssemblyTitleAttribute)assembly.GetCustomAttribute(typeof(AssemblyTitleAttribute))).Title; }
catch { }
string productGuid = string.Empty;
try { productGuid = ((ProductGuidAttribute)assembly.GetCustomAttribute(typeof(ProductGuidAttribute))).ProductGuid.ToString(@"D", CultureInfo.InvariantCulture); }
catch { }
string productName = string.Empty;
try { productName = ((AssemblyProductAttribute)assembly.GetCustomAttribute(typeof(AssemblyProductAttribute))).Product; }
catch { }
AssemblyLabel.Text = $"{assemblyGuid} ({assemblyTitle})";
ProductLabel.Text = $"{productGuid} ({productName})";

Для. NET Framework Framework (exe и dll) я получаю правильные атрибуты сборки.

Для a. NET Core 2.1 ASP. NET сборка (* .dll; не * .Views.dll), я ничего не нашел. Файл csproj выглядит следующим образом:

<PropertyGroup>
    <GenerateAssemblyInfo>true</GenerateAssemblyInfo>
    <ProjectGuid>{deadbeef-dead-beef-c0de-deadbeefc0de}</ProjectGuid>
    <Product>Product Title</Product>
    <AssemblyTitle>Assemlby Title</AssemblyTitle>
</PropertyGroup>
<ItemGroup>
    <AssemblyAttribute Include="Stackoverflow.ProductGuidAttribute">
        <_Parameter1>{deadbeef-c0de-dead-beef-c0dedeadbeef}</_Parameter1>
    </AssemblyAttribute>
</ItemGroup>

Я ожидаю, что атрибуты сборки будут записаны в сборку ASP. NET (* .dll; не * .Views.dll). ), и может быть получен как все другие сборки. NET.

Как правильно хранить атрибуты сборки в ASP. NET?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...