【发布时间】:2012-08-15 18:40:18
【问题描述】:
我在主 asp.net 项目中有数据库函数,刚刚创建了单独的 wcf 项目并尝试在 wcf 中调用数据库函数。下面的代码是 svc 中的一个函数
public string ValidateUser(string username, string pwd)
{
myApplication application = new myApplication();
string resultString = string.Empty;
try
{
resultString = application.Application.User.GetUserIdByUserName(username, pwd).ToString();
}
catch(Exception e)
{ resultString = "exception:" + e.Message; }
return resultString;
}
数据库函数的作用是检查表(MSSQL)中是否存在用户名,如果存在则返回userId。
我认为这很简单,但每次我调用这个函数时,我都会得到nullException error,我猜这是因为数据库函数在符合要求时,它会在主项目中查找来自web.config 的连接字符串,但它存储null 值。
我在本地打开两个 VS 进行测试;一个是带有 wcf 项目的主 asp.net 项目,另一个是用于控制台应用程序的 VS 调用此 wcf。
任何建议或建议将不胜感激。
【问题讨论】:
-
您应该将数据库代码分离到一个类库中,以便由 WCF 服务和 ASP.NET 应用程序调用。数据库代码必须更改为独立于 ASP.NET。 ASP.NET 应用程序中不应“调用”代码。