C# 理解.NET程序集签名

C# 理解.NET程序集签名,c#,.net,api,plugins,assembly-signing,C#,.net,Api,Plugins,Assembly Signing,这个问题是关于每个.NET程序集都有AFAIK的公钥(查看记事本中的DLL[底部是公钥]) 我知道什么是签名,为什么它存在于.NET中,但我正在从事一个即插即用(plugin)项目。我了解如何使用系统。键入等来制作插件系统 但我的问题是,这些插件将如何与我编写的一些“API”一起工作(注意引用),比如访问应用程序的内部例程本身(比如操作系统) 现在问一个问题:如果在一个应用程序更新中,更新程序用一个更新的版本替换“API”DLL,这会因为符号而破坏插件吗?(如果是这样,我完全可以编写一个小代码文

这个问题是关于每个.NET程序集都有AFAIK的公钥(查看记事本中的DLL[底部是公钥])

我知道什么是签名,为什么它存在于.NET中,但我正在从事一个即插即用(plugin)项目。我了解如何使用
系统。键入
等来制作插件系统

但我的问题是,这些插件将如何与我编写的一些“API”一起工作(注意引用),比如访问应用程序的内部例程本身(比如操作系统)


现在问一个问题:如果在一个应用程序更新中,更新程序用一个更新的版本替换“API”DLL,这会因为符号而破坏插件吗?(如果是这样,我完全可以编写一个小代码文件,使用
System.Type
,他们将其放入插件中以访问“API”)

如果您希望创建插件体系结构,我建议您从MS查看一下(托管扩展性框架)

托管可扩展性框架(MEF)是.NET的一个组合层,它提高了大型应用程序的灵活性、可维护性和可测试性。MEF可以用于第三方插件扩展,也可以为常规应用程序带来松耦合插件式体系结构的好处

MEF使创建使用插件的应用程序变得非常容易