MyGeneration学习笔记(6) :在Web Service中使用dOOdad(下)

简介:


       上一篇文章讲述了怎样插入一条记录,这里补充一下查询、修改和删除一条记录。相对插入而言,查询、修改和删除容易得多,下面分别给出我的一种实现:

 

1.查询:

// WebService端代码:
[WebMethod]
public   string  GetEmployee( int  empID)
{
    Employee emp 
= new Employee();
    
if(emp.LoadByPrimaryKey(empID))
    
{
        
return emp.ToXml();
    }

    
else
    
{
        
return null;
    }

}


// 客户端代码:
webService service  =   new  webService();
Employee emp 
=  service.GetEmployee( int  empID);

 

2. 更新:
       ADO.Net 2.0中新增了一项功能:DataRow提供SetModified和SetAdded方法来改变其状态。上一篇文章中讲到,执行emps.FromXml之后,DataRow的状态为Added,这里我们可以将DataRow的状态改为Modified,当调用Save时,即可实现更新功能。

// BusinessEntity.cs中添加一个函数:
virtual   public   void  MarkAsModified()
{
   
if (_dataRow != null)
   
{
        _dataRow.SetModified();
   }

}


// WebService端的代码:
[WebMethod]
public   bool  Update( string  str)

        Employee emp 
= new Employee();
        emps.FromXml(str);        
//此时DataRow的状态为Added
        emps.AcceptChanges(); //此时DataRow的状态为Unchanged
        emps.SetModified();        //此时DataRowd的状态为Modified
        emps.Save();                  //保存修改
}


// 客户端代码:
webService service  =   new  webService();
Employee emp 
=  service.GetEmployee( int  empID); // 同上面的查询
emp.Property  =  …………; 
service.Update(emp.Toxml());

 

3. 删除:

// 客户端只需将ID发过来就可以了
[WebMethod]
public   bool  Delete( int  empID)
{
    Employee emp 
= new Employee();
    
if(emp.LoadByPrimaryKey(empID))
    
{
         emp.MarkAsDeleted();
         emp.Save();
         
return true;
    }
 
    
else
    
{
         
return false;
    }

}


         现在还没有好的dOOdads模板来生成支持Web Service的业务实体,相信不久的将来会有的……

 本文转自Silent Void博客园博客,原文链接:http://www.cnblogs.com/happyhippy/archive/2006/08/23/601236.html,如需转载请自行联系原作者

相关文章
|
4月前
【Azure 应用服务】Web App Service 中的 应用程序配置(Application Setting) 怎么获取key vault中的值
【Azure 应用服务】Web App Service 中的 应用程序配置(Application Setting) 怎么获取key vault中的值
|
2月前
|
计算机视觉 Python
Flask学习笔记(六):基于Flask的摄像头-web显示代码(可直接使用)
这篇文章是关于如何使用Flask框架结合OpenCV库,通过电脑摄像头实现视频流在网页上的实时显示,并提供了单摄像头和多摄像头的实现方法。
119 2
Flask学习笔记(六):基于Flask的摄像头-web显示代码(可直接使用)
|
1月前
【Azure App Service】PowerShell脚本批量添加IP地址到Web App允许访问IP列表中
Web App取消公网访问后,只允许特定IP能访问Web App。需要写一下段PowerShell脚本,批量添加IP到Web App的允许访问IP列表里!
|
2月前
|
文件存储 Python
Flask学习笔记(一):Flask Web框架
本文介绍了Flask Web框架的基本概念、安装方法、初始化参数、程序编写、静态文件显示和配置信息加载等基础知识。
34 0
|
4月前
|
关系型数据库 MySQL Linux
【Azure 应用服务】在创建Web App Service的时候,选Linux系统后无法使用Mysql in App
【Azure 应用服务】在创建Web App Service的时候,选Linux系统后无法使用Mysql in App
【Azure 应用服务】在创建Web App Service的时候,选Linux系统后无法使用Mysql in App
|
4月前
|
Shell PHP Windows
【Azure App Service】Web Job 报错 UNC paths are not supported. Defaulting to Windows directory.
【Azure App Service】Web Job 报错 UNC paths are not supported. Defaulting to Windows directory.
|
4月前
|
Linux 应用服务中间件 网络安全
【Azure 应用服务】查看App Service for Linux上部署PHP 7.4 和 8.0时,所使用的WEB服务器是什么?
【Azure 应用服务】查看App Service for Linux上部署PHP 7.4 和 8.0时,所使用的WEB服务器是什么?
|
4月前
【Azure 应用服务】通过 Web.config 开启 dotnet 应用的 stdoutLog 日志,查看App Service 产生500错误的原因
【Azure 应用服务】通过 Web.config 开启 dotnet 应用的 stdoutLog 日志,查看App Service 产生500错误的原因
|
4月前
|
Linux Python
【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
|
2月前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
166 3