CSLA的项目结构(一)
由于我也是边看边学,在很多概念不是很清晰的情况下,也不好将书中的大段内容全部摘抄过来,所以结合项目源码先分析再总结,就成目前比较可行方案,第一篇先从项目结构入手。
项目源码下载后,主要的功能集中在Core项目文件夹的CSLA项目中,其他项目或从此处继承,或引用此项目,因此对整个项目的分析从此开始。
需要说明的是:解决方案\Core文件夹下,CSLA与CSLA.Net4的类基本是相同的,只是针对的编译环境不同,其他类似的文件夹也是这样的情况。
因为找到了主要的项目,其他在我的机子上不能编译或我用不到的项目就移除了,这是有点强迫症的意思,要不乱糟糟看着头大。
下表是从书摘抄过来的,根据实际情况可能已经有很大的变化,根据整个的学习进度,后面可能会回过头来更正一些说明。
文件夹 | 原书功能说明 | 说明 |
\ | 包含开发者基于CSLA创建业务对象时最常用到的类型 | |
\Core | 这些类型被其他框架类所使用,经常会用于扩展.Net框架可使CSLA能被扩展 | |
\Data | 提供简化编写数据访问代码的功能 | |
\DataPortalClient | 数据门户功能 | |
\Linq | Linq to CSLA功能所需要的类型 | 在新版本中已经没有这个文件夹,可能是其功能已经分散在各个类中 |
\Reflection | 一组辅助类型,抽象了对反射的使用 | |
\Rules | 新增,可能是与业务规则相关的类 | |
\Security | 实现授根并帮助实现自定义身份验证的类型 | |
\Serialization | 抽象了对对象序列化的操作 | |
\Server | 实现服务端数据门户功能 | |
\Silverlight | 使用CSLA可以与Silverlight交互 | |
\Validation | 为可编辑业务对象实现业务和验证规则 | 这个文件夹被移除了,可能是集成到Rules中去了 |
\Web | 帮助创建Web窗体用户界面 | 移动到解决方案\UI\Web,Web.MVC中去了 |
\Windows | 帮助创建Windows窗体用户界面 | 移动到解决方案\UI\Windows中 |
\Workflow | 帮助创建工作流 | 新版本移除了。去向不明 |
\Wpf | 帮助创建WPF用户界面 | 新版本移除,去向不明,可能是被我删除了 |
\Threading | 新增,猜测是线程相关的东西,待定 |
数据门户的意思是什么?这个还不明白
CSLA的项目结构(一)的更多相关文章
- 认识ASP.NET 5项目结构和项目文件xproj
ASP.NET 5 在项目结构上做了很大的改变,我们以前熟悉的目录结构与项目文件内容都不太一样了,本篇文章带大家了解 ASP.NET 5 到底跟以前有哪些不一样的地方. 我们先用 Visual Stu ...
- 【完全开源】知乎日报UWP版:项目结构说明、关键源代码解释
目录 说明 项目结构 关键代码 演示视频 说明 上一篇博客将源码放出来了,但是并没有做过多的介绍,所以如果自己硬看可能需要花费很长的时间,尤其这些代码并不是自己写的.项目不算复杂但是也不算简单,这篇文 ...
- Android之什么是Activity和常用的ADB命令以及Android项目结构的认识
总结一下之前学习Android的一些内容 一: Android常用的ADB命令(adb android调试桥) 1.adb devices 查看模拟器设备并重新连接. 2.adb ki ...
- Go项目结构和模块导入
Go项目结构和模块导入 golang项目结构与其他语言类似,但是仍然有一些需要注意的地方. 项目结构 环境配置 go 命令依赖一个重要的环境变量:$GOPATH,它表示GO项目的路径,如下设置 exp ...
- android第一行代码-1.项目结构
0.项目结构 一个简单的android项目结构大致如下 入口就是MainActivity这个类,如果对于一个陌生的项目,最好的办法是看AndroidMainifest.xml,如下 <?xml ...
- Mybatis 复习 Mybatis 配置 Mybatis项目结构
pom.xml文件已经贴在了文末.该项目不使用mybatis的mybatis-generator-core,而是手写Entities类,DaoImpl类,CoreMapper类 其中,Entities ...
- django开发个人简易Blog——构建项目结构
开发之前第一步,就是构造整个的项目结构.这就好比作一幅画,第一步就是描绘轮廓,有了轮廓,剩下的就是慢慢的填充细节.项目结构规划如下图: 项目结构描述: 本项目以fengzhengBlog为根目录. a ...
- 架构系列:ASP.NET 项目结构搭建
我们头开始,从简单的单项目解决方案,逐步添加业务逻辑的约束,从应用逻辑和领域逻辑两方面考虑,从简单的单个项目逐步搭建一个多项目的解决方案.主要内容:(1)搭建应用逻辑和领域逻辑都简单的单项目 (2)为 ...
- Android项目结构 以及体系结构
学习Android平台的人一般对Android的平台的应该有点认识 其它的就不多讲了 Android项目一般由以下几个部分构成 以上是一个简单的Android项目结构目录图 1. src 主要是 源 ...
随机推荐
- JSP页面用EL表达式 输出date格式
JSP页面用EL表达式 输出date格式 1.头上引入标签 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix ...
- kill 进程卡住,超时kill方法
还是有漏洞 ,万一 working.py未超时, kill_job.sh 会不会杀死别人的进程啊start.sh#!/bin/bash python working.py &python wo ...
- ExtJS4.2学习(四)Grid表格中文排序问题(转)
鸣谢:http://www.shuyangyang.com.cn/jishuliangongfang/qianduanjishu/2013-11-07/173.html --------------- ...
- PAT-乙级-1029. 旧键盘(20)
1029. 旧键盘(20) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 旧键盘上坏了几个键,于是在敲一段文字的 ...
- spoj 227
留着 #include <cstdio> #include <cstring> #include <cstdlib> #define lson l, m, rt & ...
- httpsclient 自动获取证书 无证书访问 验证过能直接用
首先实现写一个 实现接口SecureProtocolSocketFactory的类. /** *ClassName: bcde *date: 2015年2月26日 下午4:51:01 * *@auth ...
- CodeForces 300A Array
http://codeforces.com/problemset/problem/300/A 题意 :给你n个数字,让你分成3组,第一组各个数之积要小于0,第二组要大于0,第三组要等于0,符合要求的答 ...
- Ubuntu Server 中resolv.conf重启时被覆盖的问题
/etc/resolv.conf中设置dns之后每次重启Ubuntu Server时该文件会被覆盖,针对这种情况找了一些个解决方法 防止/etc/resolv.conf被覆盖的方法 方法一 1.需要创 ...
- SGU111 Very simple problem
多少个平方数小于等于X,二分. PS:java BigInteger. import java.util.*; import java.math.*; public class Solution { ...
- P107、面试题15:链表中倒数第K个结点
题目:输入一个链表,输出该链表中倒数第K个结点.为了符合大多数人的习惯,本体从1开始奇数,即链表的尾结点是倒数第1个结点.例如一个链表有6个结点,从头结点开始他们的值一次是1.2.3.4.5.6.这个 ...