小编Aus*_*din的帖子

使用Pkcs10CertificationRequest获取主题备用名称

我目前能够解码CSR的值,除了Requested Extensions,特别是X509v3 Subject Alternative Name.这是我的`DecodeCSR(string csr)的相关部分:

public void DecodeCsr(string csrStr){
//getting just csr
var csrChars = Regex.Replace(csrStr, @"-----[^-]+-----", "").Trim().Replace(" ", "").Replace(Environment.NewLine, "").ToCharArray();
//converting that string into a byte array
byte[] csrEncode = Convert.FromBase64CharArray(csrChars, 0, csrChars.Length);
//giving decodeCsr the byte array
Pkcs10CertificationRequest decodeCsr = new Pkcs10CertificationRequest(csrEncode);
//getting a string of subject information
string subject = decodeCsr.GetCertificationRequestInfo().Subject.ToString();
//here's how I'm getting a DerSet of attribute
DerSet atts = (DerSet)decodeCsr.GetCertificationRequestInfo().Attributes;
}
Run Code Online (Sandbox Code Playgroud)

这是一个带有SAN的测试csr:

string csr = "-----BEGIN CERTIFICATE REQUEST-----MIIC1DCCAbwCAQAwXjELMAkGA1UEBhMCVVMxEDAOBgNVBAgMB0dlb3JnaWExEDAOBgNVBAcMB0F0bGFudGExDTALBgNVBAoMBFRlc3QxHDAaBgNVBAMME3d3dy50aGlzaXNhdGVzdC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDFU4pXLB3d8csjvRIkIdZfUF2m9sijtk1bqYohqVwYr3+OyDRkfRuTCni8RJS9VOcl6n5aUiK27P4s5j9LqqfL0vS8B949P/ewb2ip2BGB1sEmxKcsEoZYNNEhMm9p7yNTAEqJ/WN0N1CpKBFV1J/w6xiQy5tUyUe7C9c8DX6K1uhEDF9pfeTaCNxYBShm0JFuAIqn6Z+RzbC7tdwc0KgN/bhx3bEvg8b0p/hgxd2veuUmB/fcIPsFawkGFPcQzLpSbc1Vb+zru40HAbRflyQckA3ZgRsa1OHsdiOyb8vpV7dUm4VHOm38bw2wVImRMfRtNZXrL/WiWcGadtFV8nxXAgMBAAGgMTAvBgkqhkiG9w0BCQ4xIjAgMB4GA1UdEQQXMBWCCHRlc3QuY29tggl0ZXN0Mi5jb20wDQYJKoZIhvcNAQELBQADggEBAKXxHlruiqtTwB1Ov17K+mz03EidfecdW+9u8gcLdOOLKn5kCg6RuC0mCjGHvFGjE6ljFc5cyUFbfdqzd8QXh1f3AgxveR+oq1wExJNr0Yl6kjVEdtndvHhSzUmZZ02EcPbIq/eY5KSTdKidjvIJMwTUtIyUQ71y/vSVn0YavvXYo/re57kC7chW/Ns/hZmHrZ6GvMWE9ea3P3jOKPyXCULJlbQCjXc6CQJAkBlcKpvnW6kU2PjreDWzRMhzqZzUqhc6RsGzz84/xwBsrYXfTj91FQd9+w15CYzBEJOv/Iz3CfVGb4s1+yUPVxgei2ezTjfQVcQgq4CusRnDU5/7lmE=-----END CERTIFICATE REQUEST-----";
Run Code Online (Sandbox Code Playgroud)

我可以得到的信息 …

c# bouncycastle csr x509 subject-alternative-name

5
推荐指数
1
解决办法
1412
查看次数

剃刀视图的边界属性在发布后不更新

在下面的示例剃刀视图中,无法获取属性Price来在OnPostOrder()执行后进行更新。我编写了此示例视图以执行以下操作:

  • 在更改产品选择列表时,使用jquery的提交ProductForm submit()
  • 用于asp-page-handlerOnPostOrder()提交ProductForm时点击。注意:如果我的示例中存在语法问题,这在我的实现中有效。
  • 我从自定义静态函数中获取所有产品选项,然后通过productid获得匹配的产品。
  • 我将匹配产品的价格设置为Price属性。但是,这不会更新Price属性。

示例视图:

@page
@{
    @functions{
        [BindProperty] public string Product { get; set; }
        [BindProperty] public decimal Price { get; set; }

        public void OnPostOrder()
        {
            Price = 25.00;
        }
    }
    List<ProductOption> productOptions = AdminUtil.GetProductOptions();
    SelectList productOptionSelectList = new SelectList(productOptions, "ProductId", "Name");
}

<form method="post" id="ProductForm" asp-page-handler="order">
    Product: <select asp-for="Product" asp-items="@productOptionSelectList"></select> <br />
    Order Amount: <input asp-for="Price" /> <br />
</form>

@section Scripts {
    <script> …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-core razor-pages

3
推荐指数
1
解决办法
533
查看次数

为什么Vector3在这里不可调用,我可以做些什么呢?

在Unity中我试图像这样更新一个坐标:

if (ballPos.position.y > aiPos.position.y)
    {
        transform.position += Vector3 (0.0f, 1.0f, 0f);
    }
Run Code Online (Sandbox Code Playgroud)

我得到的错误Vector3是一种不可调用的方法,我该如何有效地改变位置?

c# unity-game-engine

0
推荐指数
1
解决办法
4488
查看次数