【发布时间】:2013-12-09 08:37:46
【问题描述】:
我在 WCF 接口中有一个属性
string DBStatus(string Instance,string Asset,string Type);
[DataContract]
public class DatabaseDetails
{
[DataMember]
public string[] DBStatus { get; set; }
}
并在类中实现以下方法
public string DBStatus(string Instance, string Asset, string Type)
{
DatabaseDetails DbDetails = new DatabaseDetails();
int DBStatus = 0;
using (SqlConnection SqlConn = new SqlConnection())
{
try
{
//SqlConn.ConnectionString = "Data Source=" + ServerName + "Initial Catalog=" + DBName + "User id=" + UserId + "Password=" + Pwd;
SqlConn.ConnectionString = "server=" + ServerName + ";database=" + DBName + ";UID=" + UserId + ";PWD=" + Pwd;
SqlConn.Open();
DbDetails.DBStatus[DBStatus] = "Online";
DbDetails.DbInstance[DBStatus] = Instance;
DbDetails.AssetName[DBStatus] = Asset;
DBStatus++;
//json = "Online";
}
catch (Exception e)
{
json = "Offline";
}
}
}
Getting Object reference error @ Line : DbDetails.DBStatus[DBStatus] = "Online"; 我在使用它之前已经初始化了对象。 但不知道哪里做错了。
【问题讨论】:
-
DBStatus是一个 int 变量吗?你定义了吗。说真的,您的代码充满了DBStatus变量、函数、属性。只是建议您需要查看变量名而不是使用无意义的变量名 -
DBStatus 是其声明的 int 变量
-
I have initialised the object before using it.,不,你没有。 -
在这里,第 2 行:DatabaseDetails DbDetails = new DatabaseDetails(); @DBStatus(字符串实例,字符串资产,字符串类型)
-
NullReferenceException的几乎所有情况都是相同的。请参阅“What is a NullReferenceException in .NET?”获取一些提示。
标签: c# wcf nullreferenceexception