MVC之模型层(附上asp.net的mvc结构)
MVC系统中的模型从概念上可以分为两类――系统的内部状态和改变系统状态的动作。模型是你所有的商业逻辑代码片段所在。本文为模型提供了业务实体对象
和业务处理对象:所有的业务处理对象都是从ProcessBase类派生的子类。业务处理对象封装了具体的处理逻辑,调用业务逻辑模型,并且把响应提交到
合适的视图组件以产生响应。业务实体对象可以通过定义属性描述客户端表单数据。所有业务实体对象都EntityBase派生子类对象,业务处理对象可以直
接对它进行读写,而不再需要和request、response对象进行数据交互。通过业务实体对象实现了对视图和模型之间交互的支持。实现时把"做什
么"(业务处理)和"如何做"(业务实体)分离。这样可以实现业务逻辑的重用。由于各个应用的具体业务是不同的,这里不再列举其具体代码实例。
ASP.NET
在ASP.NET中,针对视图(View)和控制器(Controller)的模式没有被很好地定义。而模型(Model)则留给开发者去设计。
视图(View)
ASPX和ASCX文件被用来处理视图的职责。在这个设计中视图实际上是从控制器继承而来。这个和Smalltalk的实施有所不同,在Smalltalk中不同的类都有指针互相指向对方.
控制器(Controller)
控制器的职责被分割成两部分。事件(Event)的产生和传输是框架的一部分,更明确的说是Page和Control两个类。而事件的处理则在分离的代码中实现。
模型(Model)
ASP.NET 不严格需要一个模型。开发者可以自行选择创建一个模型类,但是很多人选择放弃这一步,直接把事件处理放在控制器里处理任何计算、数据保存等等。但用模型来包含商业逻辑和数据存取是可实现的。
相关文档:
1、解决Cookie更新滞后的问题
先写入一个过期的Cookie,再添加一个新的Cookie就OK了。示例代码如下所示:
protected void btnSearch_Click(object sender, EventArgs e)
{
//生成条件表达式
string where = bll.GetWhereSql(Int32.Parse(ddlCate.SelectedValue),
......
在软件开发中,把数据从一个地方复制到另一个地方是一个普遍的应用。
在很多不同的场合都会执行这个操作,包括旧系统到新系统的移植,从不同的数据库备份数据和收集数据。 ASP.NET
2.0有一个SqlBulkCopy类,它可以帮助你从不同的数据源复制数据到SQL SERVER数据库。
本文中我将示范SqlBulkCopy类的不同应用。
数据库设 ......
Public DataTable GetDataTablefromExcel(string fileName,string tableName )
{
string connStr = "Provider=Microsoft.ACE.OLEDB.12.0; Persist Security Info=False;Extended Properties=Excel 8.0; data source=文件路径"
string sql = "SELECT * from [" + tableName + "]";
OleDbConnection conn = ne ......
ASP.NET生成随机密码
在开发需要用户注册后才能使用提供的各项功能的应用程序时,在新用户提交注册信息后,较常见的做法是由程序生成随机密码,然后发送密码到用户注册时填写的电子信箱,用户再用收到的密码来激活其帐户。
实现ASP.NET生成随机密码功能是很容易的,下面的代码给出了完整的实现方法:
public static stri ......
SQL服务器 ODBC连接方式
标准安全连接
Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
信任连接
Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Trusted_Connection=Yes;
提示输入用户名和密码方式
这个有一点问题,首先你需要设置一个Pro ......