Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将新客户添加到数据库_C#_Asp.net_Stripe Payments_Stripe.net - Fatal编程技术网

C# 将新客户添加到数据库

C# 将新客户添加到数据库,c#,asp.net,stripe-payments,stripe.net,C#,Asp.net,Stripe Payments,Stripe.net,我能够成功创建令牌,然后创建一个新客户,将其注册到特定的订阅计划中 我不知道如何捕获通过条带为他们创建的客户id。我需要这个,以便在以后更改计划、更新CC等。。我创建客户的代码如下:我使用读卡器获取fname、lname等,为了简洁起见,这里不包括这些代码: private StripeCustomer CreateCustomer() { NameValueCollection nvc = Request.Form; string tokenID = nvc["stripeTo

我能够成功创建令牌,然后创建一个新客户,将其注册到特定的订阅计划中

我不知道如何捕获通过条带为他们创建的客户id。我需要这个,以便在以后更改计划、更新CC等。。我创建客户的代码如下:我使用读卡器获取fname、lname等,为了简洁起见,这里不包括这些代码:

private StripeCustomer CreateCustomer()
{
    NameValueCollection nvc = Request.Form;
    string tokenID = nvc["stripeToken"];

    if (tokenID != null)
    {
        var tokenService = new StripeTokenService();
        StripeToken stripeToken = tokenService.Get(tokenID);
    }

    var myCustomer = new StripeCustomerCreateOptions();
    myCustomer.Email = email;
    myCustomer.Description = fname + " " + lname + " (" + email + ")";
    myCustomer.TokenId = tokenID;

    string plan = "basic";

    myCustomer.PlanId = plan;

    var customerService = new StripeCustomerService();

    StripeCustomer CurrentCustomer = customerService.Create(myCustomer);
}
也许我认为这一定是错误的,但我最初是在寻找提供CustomerID的令牌。这就是它所提供的:

id: tok_102znI2MdvjLMWitzgclEEcg
livemode: false
created: 1385241151
used: false
object: "token"
type: "card"
card:
    id: card_102znI2MdvjLMWitq44B0MY7
    object: "card"
    last4: "4242"
    type: "Visa"
    exp_month: 12
    exp_year: 2021
    fingerprint: "V2WUOPIgMkP5DGGe"
    customer: null
    country: "US"
    name: null
    address_line1: null
    address_line2: null
    address_city: null
    address_state: null
    address_zip: null
    address_country: null

在创建客户之前,令牌会被传递给我,因此这显然不起作用。

Chris F的想法是正确的

之后

我只需要添加如下内容

string custid = CurrentCustomer.id;

然后将custid添加到我的数据库中。

您也可以通过以下方式执行此操作:

StripeCustomer currentCustomer = customerService.Create(myCustomer);
currentCustomer.StripeCardList.StripeCards.FirstOrDefault().CustomerId;

StripeCustomer类是否包含id字段?我看到的不是。我使用的很好,它可能不被称为id,但将是一个保存客户id的属性。该信息似乎不会从令牌返回:id:tok_102zni2mdvjlmwizgcleecg livemode:false创建:138524151使用:false对象:令牌类型:卡片:id:card_102znI2MdvjLMWitq44B0MY7对象:信用卡last4:4242类型:Visa exp_月:12 exp_年:2021指纹:V2WUOPIgMkP5DGGe客户:空国家/地区:美国名称:空
StripeCustomer currentCustomer = customerService.Create(myCustomer);
currentCustomer.StripeCardList.StripeCards.FirstOrDefault().CustomerId;