结合使用自定义SQL查询和LINQ to SQL ...帮助 [英] Using Custom SQL Queries with LINQ to SQL... Help

查看:84
本文介绍了结合使用自定义SQL查询和LINQ to SQL ...帮助的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Scott在我自己的数据库上对本教程进行了相当多的跟踪.

http://weblogs.asp.net/scottgu/archive/2007/08/27/linq-to-sql-part-8-executing-custom-sql-expressions.aspx

我的部分课程出现错误.

名称"ExecuteQuery"在当前上下文中不存在.我一辈子都无法弄清楚出了什么问题.

public partial class MerchantsAppDataContext
{

    public IEnumerable<SubmittalDetails> GetSubmittalDetails(string minDate)
    {
        var sqlTxt = "SELECT Submittals.SubmittalID, Submittals.Created AS     DateFiled, " +
            "CheckDetails.Status AS CheckStatus, CheckDetails.CheckNumber,     CheckDetails.DateWritten, CheckDetails.FaceAmount, CheckDetails.Reference,     CheckDetails.ExhibitNo AS ExhibitNumber, " +
            "CheckWriterDetails.FirstName, CheckWriterDetails.LastName " +
            "FROM Submittals " +
            "INNER JOIN LocationAccepted ON Submittals.LocationAcceptedID =     LocationAccepted.LocationAcceptedID " +
            "INNER JOIN CheckDetails ON LocationAccepted.LocationAcceptedID = CheckDetails.LocationAcceptedID AND Submittals.SubmittalID = CheckDetails.SubmittalID " +
            "INNER JOIN CheckWriterDetails ON CheckDetails.CheckWriterID = CheckWriterDetails.CheckWriterID " +
            "WHERE (CheckDetails.DateWritten >= {0})" +
            "ORDER BY   Submittals.Created DESC, Submittals.SubmittalID,     CheckDetails.CheckDetailsID ";


        return ExecuteQuery<SubmittalDetails>(sqlTxt, minDate);
    }


}



public class SubmittalDetails
{

    public int SubmittalID { get; set; }
    public string Created { get; set; }
    public int LocationAccepted { get; set; }

}

解决方案

编译器无法找到部分类的另一半,因此看不到它是DataContext.

检查自动生成的文件MerchantsAppDataContext.designer.cs,其中在其中定义了部分类MerchantsAppDataContext的名称空间,并确保在代码中使用相同的名称空间.

namespace ??? // TODO: Use the same namespace as MerchantsAppDataContext.designer.cs
{
    public partial class MerchantsAppDataContext
    {
        public IEnumerable<SubmittalDetails> GetSubmittalDetails(string minDate)
        {
            ...
        }
    }
}

I have followed this tutorial by Scott pretty much to the T against my own database.

http://weblogs.asp.net/scottgu/archive/2007/08/27/linq-to-sql-part-8-executing-custom-sql-expressions.aspx

I am getting an error in my Partial class.

The name 'ExecuteQuery' does not exist in the current context. I cannot for the life of me figure out what went wrong.

public partial class MerchantsAppDataContext
{

    public IEnumerable<SubmittalDetails> GetSubmittalDetails(string minDate)
    {
        var sqlTxt = "SELECT Submittals.SubmittalID, Submittals.Created AS     DateFiled, " +
            "CheckDetails.Status AS CheckStatus, CheckDetails.CheckNumber,     CheckDetails.DateWritten, CheckDetails.FaceAmount, CheckDetails.Reference,     CheckDetails.ExhibitNo AS ExhibitNumber, " +
            "CheckWriterDetails.FirstName, CheckWriterDetails.LastName " +
            "FROM Submittals " +
            "INNER JOIN LocationAccepted ON Submittals.LocationAcceptedID =     LocationAccepted.LocationAcceptedID " +
            "INNER JOIN CheckDetails ON LocationAccepted.LocationAcceptedID = CheckDetails.LocationAcceptedID AND Submittals.SubmittalID = CheckDetails.SubmittalID " +
            "INNER JOIN CheckWriterDetails ON CheckDetails.CheckWriterID = CheckWriterDetails.CheckWriterID " +
            "WHERE (CheckDetails.DateWritten >= {0})" +
            "ORDER BY   Submittals.Created DESC, Submittals.SubmittalID,     CheckDetails.CheckDetailsID ";


        return ExecuteQuery<SubmittalDetails>(sqlTxt, minDate);
    }


}



public class SubmittalDetails
{

    public int SubmittalID { get; set; }
    public string Created { get; set; }
    public int LocationAccepted { get; set; }

}

解决方案

The compiler is unable to find the other half of the partial class, and so it can't see that it is a DataContext.

Check the auto-generated file MerchantsAppDataContext.designer.cs to which namespace the partial class MerchantsAppDataContext is defined inside, and make sure you use the same namespace in your code.

namespace ??? // TODO: Use the same namespace as MerchantsAppDataContext.designer.cs
{
    public partial class MerchantsAppDataContext
    {
        public IEnumerable<SubmittalDetails> GetSubmittalDetails(string minDate)
        {
            ...
        }
    }
}

这篇关于结合使用自定义SQL查询和LINQ to SQL ...帮助的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆