- 浏览: 493687 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (329)
- [发布至博客园首页] (12)
- [随笔分类][01] .Net X (59)
- [随笔分类][20] Architecture (16)
- [随笔分类][21] Developer Logs (13)
- [网站分类]Windows 7 (1)
- [随笔分类][13] Oracle & .Net (7)
- [随笔分类][16] Love in China (14)
- [随笔分类][15] Development Tools (20)
- [随笔分类][18] Windows Phone (12)
- [随笔分类][12] Design & Pattern (17)
- [网站分类].NET新手区 (22)
- [网站分类]首页候选区 (2)
- [随笔分类][08] Windows (Server) (13)
- [随笔分类][02] CSLA.Net (3)
- [随笔分类][10] jQuery & javaScript (10)
- [随笔分类][11] SQL Server (4)
- [随笔分类][22] Enterprise Logs (3)
- [随笔分类][03] News (9)
- [随笔分类][19] Quality Assurance (2)
- [随笔分类][05] Silverlight (20)
- [随笔分类][14] Google Earth & .Net (6)
- [网站分类]非技术区 (9)
- [随笔分类][07] WWF (2)
- [随笔分类][04] SharePoint (1)
- [随笔分类][20] Analysis & Design (36)
- [随笔分类][06] WCF (5)
- [随笔分类][12] Architecture (1)
- [随笔分类][09] WPF (0)
- [随笔分类][17] VStudio & Expression (5)
最新评论
-
zhangyy130:
你好,我关于第二段的那个表视图、模型与图这三者的关系我没有看明 ...
UML模型的组成 -
guji528:
谢谢分享!
Enterprise Architect 基础应用 -
studentsky:
好文章,图文并茂!
WCF 第一个用 Visual Studio 2010 创建的WCF服务 -
chen975311486:
用哪个工具画的????
UML中对关系的描述 (二) -
frankies:
继续学习中。。
UML 交互概述图
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="ProjectList.aspx.cs" Inherits="PTWeb.ProjectList" Title="项目列表" %> <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server"> <div> <strong>项目<br /> </strong> <%-- AllowPaging="True" 允许分页 PageSize="4" 每页4行 DataKeyNames="Id" 强调这个设置是非常重要的,因为后台要通过获取这个Key值来唯一的定位这条记录,从而选择和删除操作 (549) --%> <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False" AllowSorting="true" DataSourceID="ProjectListDataSource" PageSize="4" DataKeyNames="Id" OnRowDeleted="GridView1_RowDeleted"> <Columns> <%-- Visible="False" 这一列被隐藏 --%> <asp:BoundField DataField="Id" HeaderText="Id" SortExpression="Id" Visible="False" /> <%-- 超链接域 DataNavigateUrlFields="Id" DataNavigateUrlFormatString="ProjectEdit.aspx?id={0} 数据导航域ID 数据导航URL 组合 当数据源中包含多个必须组合用于创建 HyperLinkField 对象的超链接的字段时,请使用 DataNavigateUrlFields 属性。DataNavigateUrlFields 属性中指定的字段与 DataNavigateUrlFormatString 属性中的格式字符串组合,以构造 HyperLinkField 对象中的超链接。 --%> <asp:HyperLinkField DataNavigateUrlFields="Id" DataNavigateUrlFormatString="ProjectEdit.aspx?id={0}" DataTextField="Name" HeaderText="项目" /> <%-- ShowDeleteButton="True" SelectText="Edit" 显示删除按钮 选择文本进入编辑模式 --%> <asp:CommandField ShowDeleteButton="True" SelectText="Edit" /> </Columns> </asp:GridView> <asp:LinkButton ID="NewProjectButton" runat="server" OnClick="NewProjectButton_Click">添加项目</asp:LinkButton> <br /> <br /> <asp:Label ID="ErrorLabel" runat="server" ForeColor="Red"></asp:Label> <csla:CslaDataSource ID="ProjectListDataSource" runat="server" TypeName="ProjectTracker.Library.ProjectList, ProjectTracker.Library" OnDeleteObject="ProjectListDataSource_DeleteObject" OnSelectObject="ProjectListDataSource_SelectObject" TypeSupportsPaging="False" TypeSupportsSorting="False"> </csla:CslaDataSource> <br /> </div> </asp:Content>
//====================================================================== // // Guid1: d08d215e-c7a9-4079-95d1-54704d568a8a // CLR版本: 2.0.50727.3053 // 新建项输入的名称: ProjectList // 机器名称: SOFTWARE-FRT-08 // 命名空间名称: PTWeb // 文件名: ProjectList // 当前系统时间: 2008-10-2 19:08:08 // 用户所在的域: TECHSTAR // 当前登录用户名: frt // 创建年份: 2008 // // Created by Terry.Feng.C (冯瑞涛) at 2008-10-2 19:08:08 // // //====================================================================== using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using ProjectTracker.Library; namespace PTWeb { /// <summary> /// 这个类和RoleList页面几乎一样,可以参考前面的描述 /// </summary> public partial class ProjectList : System.Web.UI.Page { #region 私有成员 private void ApplyAuthorizationRules() { this.GridView1.Columns[this.GridView1.Columns.Count - 1].Visible = Project.CanDeleteObject(); NewProjectButton.Visible = ProjectTracker.Library.Project.CanAddObject(); } private ProjectTracker.Library.ProjectList GetProjectList() { object businessObject = Session["currentObject"]; if (businessObject == null || !(businessObject is ProjectTracker.Library.ProjectList)) { businessObject = ProjectTracker.Library.ProjectList.GetProjectList(); Session["currentObject"] = businessObject; } return (ProjectTracker.Library.ProjectList)businessObject; } #endregion #region 事件方法 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { Session["currentObject"] = null; //授权 ApplyAuthorizationRules(); } else ErrorLabel.Text = string.Empty; } #region GridView1 /// <summary> /// 行删除之后引发此事件,清空Session,绑定GridView,因为之前采用的是理解删除,并且没有在DeleteObject事件中调用这两个动作,是无法将删除后的数据集合 /// 反映到GridView当中的,DataBind操作会引发SelectObject事件,这个事件中又调用了GetProjectList,方法中判断Sessions,已经是Null,导致从数据库载入 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void GridView1_RowDeleted(object sender, GridViewDeletedEventArgs e) { //将Session清空会引发,从数据调用新的数据装载集合 Session["currentObject"] = null; //这个操作会引发SelectObject事件 GridView1.DataBind(); } protected void NewProjectButton_Click(object sender, EventArgs e) { // allow user to add a new project // 跳转至编辑页面,添加一个新的对象 Response.Redirect("ProjectEdit.aspx"); } #endregion #endregion #region 数据控制 #region ProjectListDataSource /// <summary> /// 删除动作,会引发这个事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void ProjectListDataSource_DeleteObject( object sender, Csla.Web.DeleteObjectArgs e) { try { //转换Guid类型,调用静态方法立即上除一个项目 ProjectTracker.Library.Project.DeleteProject( new Guid(e.Keys["Id"].ToString())); e.RowsAffected = 1; } catch (Csla.DataPortalException ex) { this.ErrorLabel.Text = ex.BusinessException.Message; e.RowsAffected = 0; } catch (Exception ex) { this.ErrorLabel.Text = ex.Message; e.RowsAffected = 0; } } protected void ProjectListDataSource_SelectObject( object sender, Csla.Web.SelectObjectArgs e) { //获取,并放回给数据源控件 e.BusinessObject = GetProjectList(); } #endregion #endregion } }
发表评论
-
LINQ to SQL语句之Insert/Update/Delete操作
2009-12-30 14:54 1114Insert/Update/Delete操作 插入(Ins ... -
RabbitMQ 安装配置和简单实例
2010-01-21 16:52 1835安装ErLang运行环境 配置运行环境变量 启动服务 ... -
MSMQ(Microsoft Message Queue,微软消息队列) Asp.Net 简单示例
2010-01-22 14:59 3260系统: Windows XP 1.安装MSMQ 控制面板—&g ... -
IromPython .Net 的简介和第一个例子
2010-01-23 18:53 1345.Net 4 都已经到来 ... -
Microsoft Asp.Net MVC 从入门到精通
2010-01-27 17:53 840ASP.NET MVC Framework是微软官方提供的MV ... -
C# Socket 同步通信与异步通信 示例
2010-01-30 17:50 4737同步 1.建立链接发送和获取信息 异步 1.服务器端建立一 ... -
解决 Visual Stuido 工具栏中的工具重置后,恢复回来。
2009-12-18 17:06 1249拿DevExpress 控件为例,如果重置工具栏后,以前的工具 ... -
LINQ to SQL 用O/R设计器手工建表对象
2009-10-11 22:04 1022除了自己建立定制对象外,还可以使用O/R设计器以可视化的方式创 ... -
LINQ to XML .Net 3.5 中的新XML对象
2009-10-15 14:11 889System.Xml.Linq 命名空间中,有一系列新的LIN ... -
LINQ to XML 用 LINQ 查询 XML
2009-10-15 15:57 671将一个已知的XML放到XDocument 对象当中使用LINQ ... -
LINQ to XML 操作XML文档
2009-10-15 17:18 976使用 XDocument 对象的 Element 方法,获取制 ... -
C# 编码规范
2009-10-15 19:20 727陈年的文档,不过很不错整理出来发到博客上,还有更多的朋友需要。 ... -
Visual Studio 项目模板、文件模板、代码段和环境设置
2009-10-15 19:31 942很久前使用过,那个时候还没有开始写博客,好久不用就都忘记了,这 ... -
ADO.NET Entity Framework 概述
2009-10-16 11:50 565ADO.NET Entity Framework 与 LINQ ... -
LinqPad 1.31 下载
2009-01-14 15:42 972LinqPad 1.31 也许你已经非常熟悉他了,为即将使用L ... -
jQuery 的第一个例子
2009-01-18 10:34 795通过这个例子可以对jQuery的使用有个基本的认识,jQ ... -
jQuery 选择器的使用
2009-01-18 10:39 836jQuery 能如此的流行,很重要的一点也许就是他有非常强大且 ... -
一次从GridView 获得多个指定行中多个指定控件的值
2009-01-20 07:33 873一次从GridView 获得多个指定行中多个指定控件的值,非常 ... -
jQuery 的Ajax应用(1)--学习篇,内附实例
2009-01-28 21:48 1330下面以前台jQuery,后天C# 的方式,演示了,如何通过 ... -
Enterprise Library 4.1 一步一步从入门到精通(未完成)
2009-02-05 23:04 892Enterprise Library 4.1 一步一步从入门到 ...
相关推荐
[CSLA.NET] Using CSLA 4 eBook Series ☆ 图书概要:☆ The Using CSLA 4 ebook series will teach you how to use CSLA 4 to create powerful object-oriented business layers for your applications, as well ...
C#企业应用开发艺术CSLA.NET框架开发实战.part1.rar(PDF加源码)
《#企业应用开发艺术CSLA.NET框架开发实战》(Expert C#2008 Business Objects)配套源码及例程csla-4.5.700。 CSLA .NET is a software development framework that helps you build a reusable, maintainable ...
[Apress] CSLA .NET 框架企业应用开发艺术 (2008 版本) (英文版) [Apress] Expert C# 2008 Business Objects (E-Book) ☆ 图书概要:☆ In Rockford Lhotka’s Expert C# 2008 Business Objects, you’ll learn ...
此为《C#企业应用开发艺术--CSLA.NET框架开发实战》一书的源码 作 者: Rockford Lhotka 译 者: 侯伯薇 出版日期: 2010-03 .NET应用架构开发经典 揭示CSLA.NET框架的设计权衡 从实践中精通面向对象技术 ...
Visual Studio CSLA Extension for ADO.NET Entity Framework. Visual Studio extension and T4 templates for generation of CSLA objects from ADO.NET Entity Framework model. CSLA.NET框架面向实体框架的代码...
CSLA 4 ebook series -- Using CSLA 4 CSLA .NET Overview
CSLA.NET框架源码和实例,包括ProjectTracker等。
CSLA.NET是一个在分布式环境下只通过修改配置文件就可以实现N层部署的框架. 它致力于构建丰富,强大而灵活的业务层,包含了验证,权限,数据门户等标准化的解决方案,使你的业务对象更加标准和灵活.它提出了移动对象...
csla.net最新的源码版本
C#企业应用开发艺术CSLA.NET框架开发实战.rar,包括本书源码
C#企业应用开发艺术CSLA.NET框架开发实战.part2.rar
一个最完整的基于Csla.net的vb源代码,由comexpress生成,学习CSLA 的好资料。
His industry-standard VB .NET Business Objects book not only addresses changes in .NET 2.0 and Visual Studio 2005, but also reflects substantial enhancements and improvements to the CSLA .NET ...
C#企业应用开发艺术CSLA.NET框架开发实战
☆☆ 资源说明:☆☆ CSLA .NET 4.3.14 (C#) 框架版本: .NET Framework 4 Silverlight 5 Silverlight 4 Windows Phone 7.5 Mono MonoDroid
C#企业应用开发艺术CSLA.NET框架 4.5,带源码和实例
☆ 版本如下:☆ 1.53 2.0 2.0.1 2.0.2 2.0.3 2.1 2.1.1 2.1.2 2.1.3 2.1.4 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.6.3 3.7.0
Expert C# Business Objects图书的源码,基于.net4.0。
框架的各个功能基本都实现 是作者写的一个小例子 一直贯穿着整个书的 是3.8.4版本