Asp.Net 2.0中ObjectDataSource+Formview实现添加,修改

本文介绍如何在ASP.NET2.0中利用ObjectDataSource和Formview组件实现对对象的添加和修改功能。通过示例展示了如何在业务逻辑层定义Person类及其管理器,并将其与Web界面绑定。
在asp.net2.0中使用ObjectDataSource+Formview可以很容易实现对对象的添加和修改。我们都知道在Asp。 net2。0中加入ObjectDataSource可以很方便来绑定业务逻辑层的代码,把UI层的数据通过Formview绑定传入到数据逻辑层中。

    我们来看看ObjectDataSource中几个关键属性:

      DataObjectTypeName:用于在模型层定义的对象。

TypeName:包括新增,修改方法的业务逻辑层的对象。
InsertMethod:新增方法的名称
UpdateMethod:修改方法的名称

    看下面这个例子:在业务逻辑层定义了PersonManager对Person类进行新增和修改的方法

 


namespace Model
{


    
public class Person
    
{


        
private string _name;
        
private int _identityNumber;

        
public string Name
        
{
            
get return _name; }
            
set { _name = value; }
        }


        
public int IdentityNumber
        
{
            
get return _identityNumber; }
            
set { _identityNumber = value; }
        }


    }

}


namespace BLL
{
    
public class PersonManager
    
{
        
public static void InsertPerson(Person person)
        
{ }

        
public static void UpdatePerson(Person person)
        
{ }

        
public static Person FindPerson(string IdentityNumber)
        
{ }
    }

}

 

Web界面

 

<body>
    
<form id="form1" runat="server">
    
<div>
     
<asp:FormView ID="FormView1" DataSourceID="objectDatasource1" runat="server">
     
<InsertItemTemplate>
     
<table cellpadding="0" cellspacing="0">
     
<tr>
     
<td>姓名:</td>
     
<td><asp:TextBox ID="NameTB" Text='<%# Bind("Name") %>' runat="server"></asp:TextBox></td>
     
</tr>
     
<tr>
     
<td>身份证:</td>
     
<td><asp:TextBox ID="IdentityNumber" Text='<%# Bind("IdentityNumber") %>' runat="server"></asp:TextBox></td>
     
</tr>
     
</table>
     
</InsertItemTemplate>
     
<EditItemTemplate>
      
<table cellpadding="0" cellspacing="0">
     
<tr>
     
<td>姓名:</td>
     
<td><asp:TextBox ID="NameTB" Text='<%# Bind("Name") %>' runat="server"></asp:TextBox></td>
     
</tr>
     
<tr>
     
<td>身份证:</td>
     
<td><asp:TextBox ID="IdentityNumber" Text='<%# Bind("IdentityNumber") %>' runat="server"></asp:TextBox></td>
     
</tr>
     
</table>
     
     
</EditItemTemplate>
        
</asp:FormView>
    
</div>
    
<asp:objectdatasource ID="objectDatasource1" TypeName="Model.Person" DataObjectTypeName="BLL.PersonManager" SelectMethod="FindPerson" InsertMethod="InsertPerson" UpdateMethod="UpdatePerson" runat="server">
    
<SelectParameters>
    
<asp:Parameter  Name="IdentityNumber" />
    
</SelectParameters>
    
</asp:objectdatasource>

这样就完成了后台业务逻辑层和UI层的绑定。

当新增和修改一个Person,只需要在后台调用Formview1.Insert(true)或者Formview1.Update(true)。即可完成

比2003少很多代码吧

当然如果你在BLL使用NHibernate,这样对一个表单的数据操作就非常方便。有时间再给一个具体的案例讲述NHibernate+Formview。

 

 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值