我在C#应用程序中使用LINQ-to-SQL。
目前,我使用Page_Load
方法在不同页面上复制并粘贴我的Linq-to-SQL查询,我知道这是一个问题。
我想创建一个通过LINQ-to-SQL查询返回字符串的类,我该怎么做?尝试从 Visual Studio 中的新班级引用System.Data.Linq
并不起作用。
我是否应该尝试通过其他方式从数据库中获取这些值?我知道我可以使用LINQ-to-SQL来执行存储过程等。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace myapp.App_Code
{
public class sharedFunctions
{
public string getFirstNameFromUserID(int userID)
{
dbmyappDataContext db = new dbmyappDataContext();
Table<tbLogin> expLogin = db.GetTable<tblLogin>();
var FNQuery = (from FN in tblLogin
where FN.ID == (int)userID
select FN.UserName).FirstOrDefault();
return FNQuery.UserName.ToString();
}
}
}
我上面的主要问题是,当我所有的Table
引用都被红色波浪线加下划线时。当我盘旋在上面时,我被告知
找不到类型或命名空间名称
Table<tblLogin>
(您是否缺少using指令或汇编引用?
如果我在后面的ASPX代码中使用相同的代码,它可以正常工作。
尝试将using System.Data.Linq
添加到顶部也不起作用,它不会显示在自动填充中。但是,System.Linq就在那里。
答案 0 :(得分:0)
我找到了一个解决方案,至少可以解决System.Data.Linq无法解决的问题。我创建的类将构建操作设置为“内容”。将此更改为“编译”似乎解决了无法在类中使用System.Data.Linq的问题,并且代码现在可以正常工作。