如何从另一个解决方案中调用方法来创建一种数据包装器?

时间:2015-02-09 00:41:14

标签: c# visual-studio-2012

我有一个简单的类,用于从链接到ADO框架的数据库或任何名为OperationsEntities的数据库中提取数据......

namespace DataModel
{
    public class PublisherData
    {
        public static List<Publisher> GetByID(int n)
        {
            using (OperationsEntities context = new OperationsEntities())
            {
                var query = from results in context.Publishers
                            where results.id == n
                            select results;
                List<Publisher> list = query.ToList<Publisher>();
                return list;
            }
        }

        public static List<Publisher> GetByName(string s)
        {
            using (OperationsEntities context = new OperationsEntities())
            {
                var query = from results in context.Publishers
                            where results.contact_name == s
                            select results;
                List<Publisher> list = query.ToList<Publisher>();
                return list;
            }
        }
    }
}

现在,我正在尝试在业务层解决方案中创建一个datawrapper,以将这些数据从数据层传递到表单层(使事情变得美观和模块化,并允许我们将表单层更改为在线。未来的.NET应用程序,如果我们愿意的话,无需重写所有内容。)

但是,我似乎无法弄清楚如何在我的其他类中使用GetByID和GetByName方法。我在我的BusinessLogic命名空间中引用了我的DataModel,并且“使用DataModel;”在我的DataWrapper.cs的顶部。

我也在努力处理结果的最佳方法。到目前为止,我正在尝试基本上在DataModel上创建一个重复的类,它将只将它们解析为一个新类。到目前为止,它的骨架就是这个......

namespace BusinessLogic
{
    class PublisherWrapper
    {
        int id;
        string publisherName;
        string address;
        string city;
        string state;
        string zip;
        string contact_name;
        string contact_phone;

        List<PublisherWrapper> list;

        public PublisherWrapper() { }

        public static List<PublisherWrapper> GetListByID(int n) 
        {
            List<Publisher> list = new List<Publisher>();

        }

        return list;
    }
}

每当我尝试调用DataModel静态方法时,它会给我一些错误的红色波浪,但不提供任何进一步的信息。为什么我不能在BusinessLogic解决方案中调用这些公共静态方法?

1 个答案:

答案 0 :(得分:0)

尝试将PublisherData类设为静态。您的DataModel项目当前也在构建吗?