C# 如何在.netcore的运行时获取项目GUID?

C# 如何在.netcore的运行时获取项目GUID?,c#,.net-core,C#,.net Core,我是netcore的新成员 现在,我有了一个使用guid加密的sql连接字符串,并在项目中生成了一个guid <PropertyGroup> ... <ProjectGuid>{D830E0EE-9D0B-4FC2-A609-4661990159D2}</ProjectGuid> </PropertyGroup> 无法在此处使用GetCustomAttributes,因为它不是assembly 我怎么办 Thx.此信息未编译到应用

我是netcore的新成员

现在,我有了一个使用guid加密的sql连接字符串,并在项目中生成了一个guid

<PropertyGroup>
    ...
    <ProjectGuid>{D830E0EE-9D0B-4FC2-A609-4661990159D2}</ProjectGuid>
</PropertyGroup>
无法在此处使用
GetCustomAttributes
,因为它不是
assembly

我怎么办


Thx.

此信息未编译到应用程序中,在运行时不可用

如果您将一个秘密与应用程序捆绑在一起,它将不会是秘密的,因为将该秘密加载到内存中不需要额外的特权


如果使用SqlServer,请使用集成安全性。在这种情况下,您根本不处理密码,而是使用用户帐户。这种机制适用于许多数据库系统,即使您不使用SqlServer。

Project GUID仅用于显示项目的类型,以便围绕MSBuild/VS的工具能够正确处理它。它从不作为属性嵌入到程序集中。那么回到您的意图,为什么需要它呢?因为我们的项目总是使用guid来加密/解密sql连接密码。使用公共信息进行加密。。。这感觉有点尴尬。我知道..,但这是一个老项目,这个项目是内部使用的,所以。。
object[] guids = assembly.GetCustomAttributes(typeof(GuidAttribute), false);
string guid = ((GuidAttribute)guids[0]).Value;