无法在我的IQueryable <t> </t>中指定Out T.

时间:2011-10-12 21:46:15

标签: c# asp.net-mvc

我正在关注MVC的NerdDinner教程,并对设置我的存储库有疑问。这是我到目前为止所拥有的......

using System;
using System.Collections.Generic;
using System.Linq;


namespace BusinessReviews.Models
{
    public class ReviewsRepository
    {
        private BusinessReviewsDataContext db = new BusinessReviewsDataContext();


        public IQueryable GetAllBusinesses()
        {
            return db.Businesses;
        }
    }

}

我知道我的IQueryable应该指定T.在教程中,他们将表名放在T所在的位置,在他们的例子中是“Dinner”。对于我的申请,我认为它应该是“商业”。不幸的是,Visual Studio无法识别Business类。关于什么可能出错的任何想法?

*编辑---以下评论,这是我要写的内容

public IQueryable<Business> GetAllBusinesses()
{
return db.Businesses;
}

2 个答案:

答案 0 :(得分:1)

通常,错误“未知类型 _ _”是由命名空间问题引起的。确保包含适当的命名空间。使用生成的代码时,通过检查designer.cs文件来查看生成的类是有帮助的。也可能存在某些名称不符合您的预期的原因。

答案 1 :(得分:0)

您只能在定义界面时指定out T。你定义的是一种方法。

public interface IMyInterface<out T>
{
    T GetSomething();
}