在Kentico 7中创建折扣券

时间:2014-09-17 19:13:16

标签: c# kentico

所以我试图为Kentico 7网站创建折扣优惠券,我不确定我是否完全误解了DiscountCouponInfoProvider的工作方式,或者我是否咆哮完全错了树。

我目前使用的代码是:

var newCoupon = new DiscountCouponInfo {
    //Fill in data fields here
};
DiscountCouponInfoProvider.SetDiscountCouponInfo(newCoupon);

这不会引发错误,但优惠券永远不会出现在数据库中。我用了几行

var result = DiscountCouponInfoProvider.GetDiscountCouponinfo();

传入我在创建优惠券时使用的相同ID,并将所有正确的信息存储在结果中。

我注意到DiscountCouponInfo类有一个插入方法

newCoupon.Insert();

可能更接近我正在寻找的东西,但还没有尝试过。

任何帮助将不胜感激。或者是Kentico 7 api参考的链接。每次我去寻找它时,我都会一直找到Kentico 8.1 api参考。

感谢。

1 个答案:

答案 0 :(得分:1)

您可以通过访问CMS Desk>在Kentico UI中创建优惠券。电子商务>优惠券。但是,如果由于某种原因需要在UI之外创建它们,那么你就非常接近了。您将需要将Info对象与InfoProvider对象一起使用,如下所示:

    // Instantiate an info object
    DiscountCouponInfo dci = new DiscountCouponInfo();

    // Set your properties
    dci.DiscountCouponDisplayName = "Some text";
    dci.DiscountCouponValue = 10;

    //Update the DB with an InfoProvider object
    DiscountCouponInfoProvider.SetDiscountCouponInfo(dci);

Info对象只是一个简单的数据容器,您可以实例化,填充数据,然后将其作为参数传递给InfoProvider对象。

然后,InfoProvider具有更新/创建记录等的方法。

您还可以使用Kentico DB中的数据填充Info对象,如下所示:

    DiscountCouponInfo dci = new DiscountCouponInfoProvider.GetDiscountCouponInfo(DiscountCouponID);

我实际上只是为此写了blog post。请随时查看或read Kentico's docs了解详情。