Asp.net MVC项目中的条带集成

时间:2018-11-14 14:09:17

标签: asp.net-mvc stripe-payments

我正在尝试将条纹集成到我的asp.net应用程序中。我正在使用Visual Studio 17,目标.Net框架是4.6.1

The post i followed exactly

下面是我的控制器代码:

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Stripe;

namespace DonationProgram.Controllers
{
    public class DonationController : Controller
    {
        // GET: Donation
        public ActionResult Index()
        {
            var stripePublishKey = ConfigurationManager.AppSettings["pk_test_Ih2IeiHk6PmK19pdh7UPijhr"];
            ViewBag.StripePublishKey = stripePublishKey;
            return View();
        }

        public ActionResult Charge(string stripeEmail, string stripeToken)
        {
            var customers = new StripeCustomerService();
            var charges = new StripeChargeService();

            var customer = customers.Create(new StripeCustomerCreateOptions
            {
                Email = stripeEmail,
                SourceToken = stripeToken
            });

            var charge = charges.Create(new StripeChargeCreateOptions
            {
                Amount = 500,//charge in cents
                Description = "Sample Charge",
                Currency = "usd",
                CustomerId = customer.Id
            });

            // further application specific code goes here

            return View();
        }
    }
}

但是new StripeCustomerService()new StripeChargeService()new StripeCustomerCreateOptions中有错误,尽管我正在使用Stripe命名空间,但指出“找不到类型或命名空间”。

1 个答案:

答案 0 :(得分:1)

该博客帖子似乎不正确。您真正应该使用的是Stripe.CustomerCreateOptions或仅使用CustomerCreateOptions。同样,对于其他课程,错误也在报告中。

例如。 stripe-dotnet repo中没有类StripeCustomerCreateOptions,但是只有CustomerCreateOptions定义了here

更新。对存储库的进一步挖掘表明,该博客帖子在某个时候是正确的,但是已经过时了。 18年8月,有一个commit从所有面向客户的API类中删除了Stripe前缀。