更新到 VS 2022 v17.8 后,我无法再调试旧的 ASP.NET Core 3.1 应用程序。创建空白的 ASP.NET Core 3.1 应用程序也不起作用。
当我尝试调试应用程序时,我收到消息
HTTP 错误 500.30 - ANCM 进程内启动失败
我已经看到其他关于此问题的答案,建议将 HostingModel 更改为 Out-Process,但这对我不起作用。
但是,如果我更改为 .NET 6,一切都会恢复正常。我已经验证,我的电脑确实安装了 .NET Core 3.1 运行时和托管捆绑包。
该方法接收 pdf 文档作为应签名的字节数组、要签名的证书和 TSA 客户端,并以字节数组形式返回签名文档,如果出现错误,则返回 null。现在它返回签名的 pdf 文档,但未启用 LTV。签署的文档必须启用 LTV。如何使退回的文档启用 LTV?我将非常感谢任何建议。
public byte[] Sign(byte[] document, X509Certificate2 certificate, ITSAClient tsaClient)
{
byte[] signedDocument = null;
IExternalSignature signature = new X509Certificate2Signature(certificate, "SHA-1");
Org.BouncyCastle.X509.X509CertificateParser cp = new Org.BouncyCastle.X509.X509CertificateParser();
Org.BouncyCastle.X509.X509Certificate[] chain = new Org.BouncyCastle.X509.X509Certificate[] { cp.ReadCertificate(certificate.RawData) };
PdfReader reader = new PdfReader(document);
MemoryStream ms = new MemoryStream();
PdfStamper st = PdfStamper.CreateSignature(reader, ms, '\0');
PdfSignatureAppearance sap = st.SignatureAppearance;
sap.CertificationLevel = PdfSignatureAppearance.CERTIFIED_NO_CHANGES_ALLOWED;
sap.SignatureCreator = "NAME";
sap.Reason = "REASON";
sap.Contact = "CONTACT";
sap.Location = "LOCATION";
sap.SignDate = …Run Code Online (Sandbox Code Playgroud)