在ASP.NET 4数据绑定控件中启用动态数据

创建 ASP.NET Web 应用程序并添加数据模型

创建 ASP.NET Web 应用程序

· 启动 Visual Studio

· “File”菜单中单击“New”,再单击“Project”

将显示“New Project”对话框。

· “Installed Templates”下的左侧窗格中,选择“Visual C#”,然后选择“Web”

· “Installed Templates”下,选择“ASP.NET Web 应用程序

· “Location”框中输入要保存 Web 应用程序的文件夹的名称。例如,输入文件夹名称“C:\WebApplications\EnableDynamicData”

· 单击“OK”

下一步是添加数据库。

Web 应用程序中添加数据库

· “Solution Explorer”中,右击 App_Data 文件夹,然后单击“Add Exiting”

· “Add Exiting”对话框中,输入 AdventureWorksLT 数据库文件 (AdventureWorksLT.mdf) 的存储位置,然后单击“Add”

您现在可以创建一个数据模型,其中包含表示数据库表的类。动态数据使用这些类来实现与数据库的交互。在本演练中,您将使用 LINQ-to-SQL 数据模型。但是,可以改用 ADO.NET Entity Framework 数据模型。(您还可以在不使用任何数据模型的情况下手动创建这些类,但是本次演示中不显示这种情况。)

创建数据模型

· “Solution Explorer”中右击项目名称,然后单击“Add”

· 单击“New Item”

· “Installed Templates”下的左侧窗格中,选择“Data”

· 在中间窗格中,单击“LINQ to SQL Classes”

· “Name”框中,输入数据库模型的名称 AdventureWorksLT.dbml

· 单击“Add”

此时将显示对象关系设计器。有关更多信息,请参见对象关系设计器(O/R 设计器)

· 在对象关系设计器(Object Relational Designer)中,单击“Server Explorer”链接。

· “Server Explorer”中,在“Data Connections”下面,展开“AdventureWorksLT_Data.mdf”节点,然后展开“Tables”节点。

· 选择所有表并将其拖到对象关系设计器窗口中。

· 在显示的关系图中,选择 SalesOrdersDetail 表的所有列。

· 在相关的“Properties”窗口中,将更新检查属性设置为“Never”

· 关闭“Server Explorer”

· 保存并关闭 AdventureWorksLT.dbml 文件。

您已经创建了一个表示 AdventureWorksLT 数据库的数据模型。

创建自定义逻辑以访问指定表

下一步是创建能让应用程序访问并处理数据库信息的代码。(在动态数据 Web 应用程序中,将会自动生成此逻辑。但本演练演示如何创建此代码以用于 ObjectDataSource控件。)对于本演练,自定义逻辑由一些方法组成,这些方法列出并修改 SalesOrderDetail 表中包含的数据字段。

创建自定义逻辑以访问指定表

· “Solution Explorer”中右击项目名称,然后单击“Add”

· 单击“New Item”

· “Installed Templates”下的左侧窗格中,单击“Code”

· 在中心窗格中,单击“Code File”

· “Name”框中输入ProcessingOrderDetails.cs,然后单击“Add”

· 将下面的代码复制到新类中,这样会替换文件中的所有已有代码。

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

namespace EnableDynamicData
{
  
public class ProcessingOrderDetails
  {
    
public IEnumerable GetSalesOrderDetails()
    {
      
using (AdventureWorksLTDataContext db = 
         
new AdventureWorksLTDataContext())
      {
        
return db.SalesOrderDetails.ToList();
       }
    }

    
public void Update(SalesOrderDetail p)
    {
      
using (AdventureWorksLTDataContext db = 
        
new AdventureWorksLTDataContext())
        {
          db.SalesOrderDetails.Attach(p, 
true);
          db.SubmitChanges();
        }
    }
  }
}

 

该类包含下列方法:GetSalesOrderDetails.该方法返回 SalesOrderDetail 表中的数据行。该方法实例化数据库上下文对象,然后使用 SalesOrderDetails 类来获取行的集合。

Update.该方法更改 SalesOrderDetail 表中的列值。该方法实例化数据库上下文对象,然后将 SalesOrderDetail 表中的更改提交到数据库。

· 保存并关闭文件。

· “Build”菜单中,单击生成 EnableDynamicData(或者用于 Web 应用程序的名称)以生成解决方案。

这样会使业务对象可用于下一个过程。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9091769/viewspace-666911/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/9091769/viewspace-666911/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值