.net 中的三层应用程序 [关闭]

Posted

技术标签:

【中文标题】.net 中的三层应用程序 [关闭]【英文标题】:Three-tiered application in .net [closed] 【发布时间】:2012-09-12 05:45:39 【问题描述】:

我目前正在当地的一所大学学习 MCPD,我已经形成了我的讲师对他/她的学科知之甚少的基础。

这是我们从该地区的另一位讲师那里得到的项目。

(在 VS 2010 中并通过 C#)

为辅导员创建一个 3 层应用程序来处理学生/

1(创建数据库)

2 - 创建一个 DataLayer - 这必须是一个 DataService

2.1 将 .edmx 模型添加到从您在步骤 1 中创建的数据库生成的 DataService 中

2.2 添加以下可查询服务操作符:

2.2.1 GetStudent() - 列出数据库中的所有学生

>>>

2.3 - 为您的所有客户授予您所有实体的只读权限。

2.4 - 授予所有客户对所有服务操作和学生实体的读/写(是的,我从页面中引用)权限。

2.5 - 配置您的 Service1.svc 文件以使用 System.Data.Services.DataServiceHostFactory

3 - 创建 Wpf 应用程序

3.1 使用户能够根据他们的登录查看学生、资格等。

3.2 创建功能以允许辅导员使用 xml 文件宣传新学生。

3.3 必须创建一个 Add using xml 或 Add using text files 窗口。

现在,我的免责声明:我绝对不是专家或任何好东西。我有 4 年的 WinForms 数据库经验。所以这是一些非常有限的知识。

但是:我的知识有限.. 告诉我 nr 2. 想要一个 Web 服务或后者的东西,然后不使用它,而是使用 WPF 应用程序与数据库通信。

既然我愿意侮辱这个经过深思熟虑的项目的思想,我也愿意接受这个事实,如果我错了或没有正确理解。

那么现在,任何人都可以向我解释这个项目是否可行或精明?

如果是这样,我很乐意接受推理并承认我的失败。

【问题讨论】:

这不是一个真正有建设性的问题,但是:鉴于您发布的内容,我认为 WPF 应用程序不应该使用该服务,而应该点击数据库直接......因此,三层是数据库,服务,客户端。有什么问题? 您到底在寻找什么答案?我正在阅读此内容,但没有找到您的问题。很抱歉,你的讲师和他的任务没有达到你的标准。也许您应该考虑与辅导员交谈? 就像 Dan J 简而言之:您需要让 WPF 应用程序与服务对话,而不是与数据库对话。期间。 【参考方案1】:

描述完全令人困惑,但我的假设是您应该使用 EF 创建模型,然后将其包装在 WCF 服务中,然后让 WPF 应用程序与 Web 服务通信。

【讨论】:

是的,我现在看到了在深夜这样做的严重性。好的。好吧,正如我所说,我会承认我的失败。感谢您指出这一点。我真的很感激。据我了解,这些服务仅用于基于 Web 的应用程序。因此,如果我可以连接到数据库本身,为什么还需要服务?昨天我在发布之前对此事进行了大量研究,但似乎我没有得到您仍然可以将服务连接到 WPF 客户端。在重新尝试这个项目时,你有什么我可以使用的具体技巧吗?谢谢!【参考方案2】:

我真的不明白这里有什么问题。

基本上你:

    创建数据库 (meh) 创建一个DataLayer,即一个包含描述数据库中每个实体的对象的独立类库(如果你想看起来很酷,你可以使用NHibernate/EntityFramework,或者你可以简单地创建对象并定义数据库查询在单独的方法中,这些方法只是读取数据库并返回您在 DataLayer 中定义的对象,但内部包含详细信息) 创建一个 WPF 应用程序,该应用程序将使用此 DataLayer 作为模型,并显示一个 GUI 以允许用户浏览学生(即查询学生的数据库,添加/编辑/删除他们的详细信息...)。

再一次,这对我来说似乎都很基础,除非我不明白

【讨论】:

以上是关于.net 中的三层应用程序 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

asp.net中的三层架构是啥意思?mvc设计模式是啥?它们之间有关系吗?

深入探讨:如何理解.Net的三层架构

ASP.NET MVC 的三层架构 + EF数据模型

ASP.NET MVC 的三层架构 + EF数据模型

手动搭建简单的三层框架

如何编写带有ORM的三层架构,最好给个例子看看。