gpt4 book ai didi

c# - 在 Azure 中发布时 Web 应用程序行为不同

转载 作者:行者123 更新时间:2023-11-30 18:29:24 24 4
gpt4 key购买 nike

我创建了一个 Web 应用程序,在其中调用 C# 方法。在 c# 方法中,我返回一个包含 1、2、3 等值的对象。当我在本地主机中运行应用程序时,我得到该对象的确切值。但是,当我在 AZURE 中发布此应用程序时,没有进行任何更改。我没有得到像 1、2、3 这样的值,而是得到了 System.Object 的值。我不明白这种奇怪的行为。请帮助我。这是我的代码:

$('#btn').click(function(){
PageMethods.SaveNDig(obj, OnComplete);
});

C# 方法:

[WebMethod]
public static string SaveNDig(Object obj)//string CourseName, string CourseCategoryURL, string CourseCategoryName, string CourseInfo, string PassPercentage, string TextBooks, string GradingSchemes
{

object result = database.ExecuteScalar("select userid from EUser where username ='" + username + "'");
return result;
}

public static object ExecuteScalar(string query)
{
object obj = new object();
try
{
con = InitializeConnection();
cmd = new SqlCommand(query, con);
con.Open();
obj = cmd.ExecuteScalar();
}
catch (Exception ex) { }
finally
{
if (con.State == System.Data.ConnectionState.Open)
{
con.Close();
}
}
return obj != null ? obj : null;
}

最佳答案

ExecuteScalar 返回一个对象。我已经看到您提到的这个问题 - 事实上,我遇到了您寻找 Azure 和 ExecuteScalar 问题的问题。 ExecuteScalar 被记录为返回返回对象的第一行中的第一列。

仅供引用,我们使用 Entity Framework ,并且相关数据库驻留在本地和云中。在本地,我的插入工作使用 ExecuteScalar 进行查找,但返回的对象是无用的。尝试对其进行强制转换会引发 InvalidCast 异常。

我已经开始用 ExecuteNonQuery 替换 ExecuteScalar,到目前为止效果很好。

这是我发现对基于 Azure 的数据库访问进行故障排除最有帮助的文章...

https://www.simple-talk.com/blogs/2012/05/31/3-tips-for-sql-azure-connection-perfection

关于c# - 在 Azure 中发布时 Web 应用程序行为不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23055036/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com