- 浏览: 504441 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (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 1145Insert/Update/Delete操作 插入(Ins ... -
RabbitMQ 安装配置和简单实例
2010-01-21 16:52 1874安装ErLang运行环境 配置运行环境变量 启动服务 ... -
MSMQ(Microsoft Message Queue,微软消息队列) Asp.Net 简单示例
2010-01-22 14:59 3289系统: Windows XP 1.安装MSMQ 控制面板—&g ... -
IromPython .Net 的简介和第一个例子
2010-01-23 18:53 1365.Net 4 都已经到来 ... -
Microsoft Asp.Net MVC 从入门到精通
2010-01-27 17:53 866ASP.NET MVC Framework是微软官方提供的MV ... -
C# Socket 同步通信与异步通信 示例
2010-01-30 17:50 4759同步 1.建立链接发送和获取信息 异步 1.服务器端建立一 ... -
解决 Visual Stuido 工具栏中的工具重置后,恢复回来。
2009-12-18 17:06 1296拿DevExpress 控件为例,如果重置工具栏后,以前的工具 ... -
LINQ to SQL 用O/R设计器手工建表对象
2009-10-11 22:04 1060除了自己建立定制对象外,还可以使用O/R设计器以可视化的方式创 ... -
LINQ to XML .Net 3.5 中的新XML对象
2009-10-15 14:11 914System.Xml.Linq 命名空间中,有一系列新的LIN ... -
LINQ to XML 用 LINQ 查询 XML
2009-10-15 15:57 690将一个已知的XML放到XDocument 对象当中使用LINQ ... -
LINQ to XML 操作XML文档
2009-10-15 17:18 1013使用 XDocument 对象的 Element 方法,获取制 ... -
C# 编码规范
2009-10-15 19:20 749陈年的文档,不过很不错整理出来发到博客上,还有更多的朋友需要。 ... -
Visual Studio 项目模板、文件模板、代码段和环境设置
2009-10-15 19:31 964很久前使用过,那个时候还没有开始写博客,好久不用就都忘记了,这 ... -
ADO.NET Entity Framework 概述
2009-10-16 11:50 593ADO.NET Entity Framework 与 LINQ ... -
LinqPad 1.31 下载
2009-01-14 15:42 1000LinqPad 1.31 也许你已经非常熟悉他了,为即将使用L ... -
jQuery 的第一个例子
2009-01-18 10:34 825通过这个例子可以对jQuery的使用有个基本的认识,jQ ... -
jQuery 选择器的使用
2009-01-18 10:39 868jQuery 能如此的流行,很重要的一点也许就是他有非常强大且 ... -
一次从GridView 获得多个指定行中多个指定控件的值
2009-01-20 07:33 894一次从GridView 获得多个指定行中多个指定控件的值,非常 ... -
jQuery 的Ajax应用(1)--学习篇,内附实例
2009-01-28 21:48 1353下面以前台jQuery,后天C# 的方式,演示了,如何通过 ... -
Enterprise Library 4.1 一步一步从入门到精通(未完成)
2009-02-05 23:04 910Enterprise Library 4.1 一步一步从入门到 ...
相关推荐
CSLA.NET框架是一种用于构建可复用的企业级应用程序的开源开发框架,由Rockford Lhotka创建。这个框架的核心设计理念是提供一套强大的业务对象模型,支持数据持久化、权限管理、事务处理和验证规则等功能。在"CSLA...
8. **项目跟踪器实例**:在提供的"ProjectTracker"示例中,开发者可以看到如何将这些概念应用到实际项目中。这个例子展示了如何创建一个简单的项目管理应用,包括任务分配、时间追踪等功能,是学习CSLA.NET的绝佳...
9. **源码分析**:附带的源码提供了丰富的示例,可以帮助读者深入理解CSLA.NET的内部工作原理,同时也可以直接用于项目开发中,加快开发进度。 10. **持续学习与社区支持**:CSLA.NET拥有活跃的社区和丰富的在线...
[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 ...
**基于Csla.Net的VB源代码详解** Csla.Net(Business Logic Layer Solutions Architecture)是由Rockford Lhotka创建的一个开源框架,它为.NET开发者提供了一种构建可复用的、可维护的业务对象的模式。这个框架的...
C#企业应用开发艺术CSLA.NET框架开发实战.part1.rar(PDF加源码)
3. ** 设计模式 **:CSLA.NET的核心是基于几种设计模式,如工厂模式(用于对象实例化)、策略模式(用于行为的可插拔性)、代理模式(用于远程对象访问)和状态模式(用于管理对象的状态变化)。这些模式使得代码...
《#企业应用开发艺术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 ...
CSLA (Component Services Library for Applications) .NET框架是由Rockford Lhotka创建的,它为.NET平台提供了一种强大的业务对象开发模型。该框架的主要目标是帮助开发人员构建可复用、可维护和灵活的业务应用程序...
[Apress] CSLA .NET 框架企业应用开发艺术 (2008 版本) (英文版) [Apress] Expert C# 2008 Business Objects (E-Book) ☆ 图书概要:☆ In Rockford Lhotka’s Expert C# 2008 Business Objects, you’ll learn ...
此外,CSLA .NET与Windows Forms、WPF、ASP.NET等UI技术无缝集成,支持数据绑定,使开发者能够轻松地创建用户界面。 **3. 安全性和权限管理** 框架中的安全特性允许对业务对象进行细粒度的访问控制,以满足不同...
此为《C#企业应用开发艺术--CSLA.NET框架开发实战》一书的源码 作 者: Rockford Lhotka 译 者: 侯伯薇 出版日期: 2010-03 .NET应用架构开发经典 揭示CSLA.NET框架的设计权衡 从实践中精通面向对象技术 ...
5. **更完善的文档和示例**:随着版本的更新,CSLA.NET的文档通常会得到更新,提供更详尽的教程和示例,帮助开发者快速上手。 **压缩包内容分析** "README.txt" 文件很可能是包含了安装指南、更新内容和注意事项的...
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.net 4.6.5源码,开发者可以了解到如何实现这些特性,学习到面向对象设计原则、模式的应用,以及如何在实际项目中有效地利用Csla来提高开发效率和代码质量。同时,源码阅读也帮助开发者更好地调试和优化...
CSLA.NET是一个在分布式环境下只通过修改配置文件就可以实现N层部署的框架. 它致力于构建丰富,强大而灵活的业务层,包含了验证,权限,数据门户等标准化的解决方案,使你的业务对象更加标准和灵活.它提出了移动对象...
### 使用CSLA 4:CSLA .NET概览 #### 一、CSLA .NET简介 **CSLA(Component-based Scalable Logical Architecture)**是一种面向对象的应用程序开发框架,主要针对.NET平台。它由Rockford Lhotka创建,并在多个...
10. **UI绑定**:CSLA.NET对象可以直接与各种UI框架(如WinForms、WPF、ASP.NET等)绑定,简化了视图层的开发。 通过阅读《CSLA.NET框架开发实战Expert C#2008 Business Objects》,读者不仅能了解到CSLA.NET的架构...
8. **项目Tracker cs**:在压缩包中的"ProjectTracker cs"可能是一个使用CSLA .NET 框架开发的示例项目,它演示了如何将CSLA的特性应用于实际的项目管理应用中,包括任务跟踪、资源分配等功能。 综上所述,CSLA ...
C#企业应用开发艺术CSLA.NET框架开发实战.part2.rar