0
我工作的一个项目,其中我把一些VB.Net类库C#库(主要是学习C#语法)。我的问题是我无法使Save函数工作。保存对象到数据库
我建设我的对象与此:
public static StoreEmployee Create(string LoginId)
{
var emp = new StoreEmployee();
using (var dt = DAC.ExecuteDataTable("usp_ActiveEmployeeSelect",
DAC.Parameter(CN_LoginId, LoginId)))
{
emp.StoreId = Convert.ToString(dt.Rows[0][CN_StoreId]);
emp.FirstName = Convert.ToString(dt.Rows[0][CN_FirstName]);
emp.LastName = Convert.ToString(dt.Rows[0][CN_LastName]);
emp.UserName = Convert.ToString(dt.Rows[0][CN_UserName]);
emp.Role = Convert.ToString(dt.Rows[0][CN_Role]);
emp.Description = Convert.ToString(dt.Rows[0][CN_Description]);
}
return emp;
}
然后用这个
private static void FillStoreEmployeeObject(string empLoginId)
{
StoreEmployee.Create(empLoginId);
}
创建它,然后尝试使用此保存功能保存回对象数据库:
public override Boolean Save(string LoginId)
{
try
{
int retVal = DAC.ExecuteNonQuery("usp_ActiveEmployeeSave",
DAC.Parameter(CN_LoginId, LoginId),
DAC.Parameter(CN_StoreId, StoreId),
DAC.Parameter(CN_FirstName, FirstName),
DAC.Parameter(CN_UserName, UserName),
DAC.Parameter(CN_Role, Role),
DAC.Parameter(CN_Description, Description));
return true;
}
catch
{
return false;
}
}
我没有这应该是一个语法警告,但我已经修改了很多次,所以我想马在我继续之前,确定这是正确的。这看起来是否正确?顺便说一句,我试图调用保存功能与此
StoreEmployee.Save(Convert.ToString(登录))
这给了我这个错误的对象引用需要非静态字段,方法或属性但是,当我将我的函数标记为static时,我的Create函数显示错误,因此我很困惑。
我修改了原来的问题,并加入我的呼叫来创建功能,因为现在我想知道如果我的问题的一部分范围。由此我的意思是问我的问题是,StoreEmployee.Save()没有访问StoreEmployee对象,因为我做错了什么? –
**你需要调用'Save'上StoreEmployee'的'的_instance_ ** – SLaks
我不是如何做到真正的清晰。我想我明白你在说什么,但是我不知道如何在创建StoreEmployee实例之后获得它。我可以创建一个表单级别的变量,只要我需要它就可以保存整个StoreEmployee对象? –