c# - 如何使用自己的密钥对签署 Roslyn
问题描述
我有兴趣自己编译 Roslyn 以使用他的内部类,如RegexParser和其他类。
而且我还应该能够对文件进行签名,以便在 VSTO 插件中使用它们。
我在这里看到了一个关于如何签署 Roslyn 的教程,但它是一个旧教程,现在不再适合 Roslyn。
我从这里下载并构建了代码 但它由以下人员签名:
C:\Users\google-dev\.nuget\packages\microsoft.dotnet.arcade.sdk\1.0.0-beta.21161.1\tools\snk\35MSSharedLib1024.snk
用我自己的密钥签署 Roslyn 的正确方法是什么?我该如何设置DelaySign = false
?
解决方案
要访问 Roslyn 的内部类,您不必自己重新编译 Roslyn。而是使用IgnoresAccessChecksToGenerator,它可以让你访问你需要的所有内部类,你也可以在 VSTO 中使用它。
生成
IgnoresAccessChecksTo
属性和引用程序集以允许在编译时访问内部
来自github
生成所有内部类型和成员公开的引用程序集,并应用
IgnoresAccessChecksTo
属性
推荐阅读
- loopbackjs - Loopback 中的领域是什么?
- animation - 视频到 webp 转换器软件
- pytorch - 对象检测模型 (PyTorch) 到 ONNX:ONNX 推理的空输出
- c++ - C++,在 C++ 中管理文件的问题
- html - 下拉内容后面的元素显示在前面/带有下拉内容
- django - Django 自定义中间件 request.user 总是 AnonymousUser
- apache-zookeeper - Zookeeper 3.6.0 TCP 要求改变了吗?
- c# - 是否可以只刷新数据网格中的一列?wpf
- javascript - 使用 jQuery / Javascript 更改导航样式
- git - 如何在 git 存储库中使用“人工根提交”?