小编use*_*908的帖子

条带C#错误处理

我设法使用Strip.net dll的一个版本来创建一个付款方法,但我有处理错误的问题.我得到了这个.

try
{
    StripeCustomer current = GetCustomer();
    // int? days = getaTraildays();
    //if (days != null)
    //{
    int chargetotal = 300; //Convert.ToInt32((3.33*Convert.ToInt32(days)*100));
    var mycharge = new StripeChargeCreateOptions();
    mycharge.AmountInCents = chargetotal;
    mycharge.Currency = "USD";
    mycharge.CustomerId = current.Id;
    string key = "sk_test_XXX";
    var chargeservice = new StripeChargeService(key);
    StripeCharge currentcharge = chargeservice.Create(mycharge);
    //}
}        
catch (StripeException)
{
    lblerror.Text = "Please check your card information and try again";
}
Run Code Online (Sandbox Code Playgroud)

它将捕获错误并让用户知道存在问题,但我是新的,以了解为什么它仍然显示错误,如果该过程工作.我知道它的问题与捕获的方式有关,但我不确定如何处理,我尝试过的所有内容都失败了.我想做的是让它重定向到另一个页面.有任何想法吗

++更新

在Olivier Jacot-Descombes的帮助下,我改变了我的代码

catch (StripeException ex) 
{ 
lblerror.Text = (ex.Message); 
}
Run Code Online (Sandbox Code Playgroud)

并且能够获得更好的结果

c# asp.net stripe-payments stripe.net

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

对表中的每一行运行SQL Server函数

我有一个函数,它迭代表中的"每行".当它运行时,它应该查看每一行,拉入该行的相关SET值并运行该函数,该函数依次返回结果并使用正确的值更新正确的行.发生的事情是它正在运行并返回最后一行的值并使用该值更新所有行.我有什么想法我做错了吗?

SELECT 
     RowNum = ROW_NUMBER() OVER(ORDER BY ID)
     ,*
INTO #Geo
FROM DDDG

DECLARE @MaxRownum INT
SET @MaxRownum = (SELECT MAX(RowNum) FROM #Geo)

DECLARE @Iter INT
SET @Iter = (SELECT MIN(RowNum) FROM #Geo)

WHILE @Iter <= @MaxRownum
BEGIN
     SELECT *
     FROM #Geo
     WHERE RowNum = @Iter

    DECLARE @address nvarchar (100);
    Select @address =  Ad1 from DDDG where id = @Iter;

    DECLARE @state nvarchar (100);
    SET @state = 'FL';

    DECLARE @zip nvarchar (100);
    SET @zip = '33142';

    DECLARE @city nvarchar (100); …
Run Code Online (Sandbox Code Playgroud)

sql t-sql database sql-server

-1
推荐指数
1
解决办法
1万
查看次数

返回值和bool

我试图通过bool响应返回单独查询的值,但我无法正确使用它.除了搜索发现或不发现之外,我没有收到任何错误.Subscriberkey值从另一个类传递到该类.我做出的任何我想到的更改都会破坏代码并添加类似的内容

if (var == null)
{ 
    return true;
}

return SubscriberQuery.LookupSubProfile(querysubscriber);
Run Code Online (Sandbox Code Playgroud)

不起作用.

public static bool LookupSubProfile (SubscriberProfileQuery subscriber)
{
    try
    {
        var connString = "Server = Server\\SQLEXPRESS; initial catalog = Stuff; integrated security = True;";

        var query = "SELECT * FROM Subscriber WHERE SubscriberKey = '@SubscriberKey'";

        query = query.Replace("@SubscriberKey", subscriber.Subscriberkey);

        using (SqlConnection conn = new SqlConnection(connString))
        {
            conn.Open();
            SqlCommand command = new SqlCommand(query, conn);
            command.ExecuteNonQuery();
            conn.Dispose();
            conn.Close();
        }

        return false; 
    }
    catch
    {
        return false;
    }
Run Code Online (Sandbox Code Playgroud)

c# sql-server asp.net

-2
推荐指数
1
解决办法
104
查看次数

标签 统计

asp.net ×2

c# ×2

sql-server ×2

database ×1

sql ×1

stripe-payments ×1

stripe.net ×1

t-sql ×1