XAF应用开发教程(一) 创建项目
XAF是DevExpress公司的快速开发框架,全称eXpress Application Framework,是企业信息系统的开发利器,快速开发效果显著,在.net框架中,笔者至今没有找到一款可以与之比较的产品。下面以应用为中心,讲述如何应用XAF。
下载与安装,如果你已经安装好了sqlserver和visual studio,请至http://www.devexpress.com 下载试用版,安装完成后即可体验。
我使用的是vs2015+sqlserver 2014(与vs内置一起的)。
一、XAF有哪些优点呢?
1,Web项目(b/s)
2,win项目(c/s)
3,平板电脑(beta)
4,移动端(beta)
上述4种项目一次编码,同时生成。其中web/win是两个项目,3,4都是web项目,只是使用了不同的适应界面可以在移动设备和平板电脑上进行浏览操作等。
二、14种数据库支持
可以支持所有常见数据库,如Oracle,MySQL,SqlServer,Access,DB2等等 ,切换数据库无需修改编码。
三、内置模块丰富,涉及到开发中的方方面面,如权限系统、报表系统、数据分析、图表、验证模块、外观模块,等等 。
下面演示一个简单CRM系统中的部分内容。
四、新建项目:
打开VS后,依次选择 文件->新建->项目 后,出现如下画面,展开Visual C#->DevExpress XAF->DevExpress v15.1 XAF Solution Wizard.

在名称中输入一个自己取的项目名称,我输入的是XCRMDemo.并按确定。
出现如下画面:

这里是在询问我们,要创建windows项目还是web项目,通常我会都选中,默认的只有windows选中。点击next.
接下来会出现如下画面,是在询问我们要使用哪种ORM,用过Entity Framework的同学应该会感觉很熟悉有EF 的CodeFirst和ModelFirst可选。
我使用的是XPO,最后一项,为了学习XAF请选择最后一个,后面熟悉了,再用EF也是一样的。

然后出现的是权限模块相关的内容,第一个radio box组选择第二项。Standard(requests login and password)这一项是指开发好的程序需要用到用户名和密码进行登陆。
Active Directory(users windows account)这一项是和域身份绑定的,我一般不用这个。
Database Security选择第一项,Client-Side Security-UI-LevelMode。后面几项以后介绍。
当然,如果这里一开始做项目时没有选对,以后也是有机会可以修改的。

然后会出现选择需要用到的模块的选项。

本项目中只为演示,所以仅选择几个模块:



然后按Finish按钮,项目就开始创建了。
项目创建完成后,我们可以直接按下F5看看XAF为我们创建了什么样的东西出来。

这时会出现这个登陆框,用户名输入 admin,没有密码,按下log on按钮。

可以看到有导航菜单,工具菜单,还有MyDetail的详细界面,当然,你可以点点看看,体会一下:D
好,接下来再看看自动创建web项目是什么样子的:

在解决方案资源管理器中,选中XCRMDEMO.Web,右键,找到“设为起动项目”,然后按下F5.出现如下界面:

同样的,用户名为admin,没有密码。按下logon按钮。进入系统。

好,创建项目完成了。下面我们来看看数据库情况:
1.数据库在哪里呢?
1.1web,找到XCRMDemo.Web中的web.config文件,可以看到如下配置节:
<connectionStrings>
<add name="EasyTestConnectionString" connectionString="Integrated Security=SSPI;Pooling=false;Data Source=(localdb)\mssqllocaldb;Initial Catalog=XCRMDemoEasyTest" />
<add name="ConnectionString" connectionString="Integrated Security=SSPI;Pooling=false;Data Source=(localdb)\mssqllocaldb;Initial Catalog=XCRMDemo" />
<!--
Use the following connection string to connect to a Jet (Microsoft Access) database that is already created and located in the <application root>/app_data folder.
<add name="ConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Password=;User ID=Admin;Data Source=|DataDirectory|\XCRMDemo.mdb;Mode=Share Deny None;"/>
If the database doesn't exist, it won't be created until you replace the |DataDirectory| substitution string with the fully qualified path to the database. For instance:
<add name="ConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Password=;User ID=Admin;Data Source=C:\myDataFolder\XCRMDemo.mdb;Mode=Share Deny None;"/>
-->
</connectionStrings>
其中,ConnectionString是
Integrated Security=SSPI;Pooling=false;Data Source=(localdb)\mssqllocaldb;Initial Catalog=XCRMDemo 1.2win,找到XCRMDEMO.Win中的App.Config文件,同样会有上面的文字。
看看数据库:

可以看到,XAF程序自动为我们创建了数据库,不用纠结这些表是干什么的,慢慢的就明白了:D 下一节介绍简单的开发。 文章示例项目源码下载
QQ 4603528 QQ群:336090194
XAF应用开发教程(一) 创建项目的更多相关文章
- iOS 9应用开发教程之创建iOS 9项目与模拟器介绍
iOS 9应用开发教程之创建iOS 9项目与模拟器介绍 编写第一个iOS 9应用 本节将以一个iOS 9应用程序为例,为开发者讲解如何使用Xcode 7.0去创建项目,以及iOS模拟器的一些功能.编辑 ...
- (转)Ratchet教程:创建项目
原文:http://www.w3cplus.com/mobile/how-to-create-mobile-project-width-ratchet.html Ratchet教程:创建项目 ...
- MVC5 网站开发之二 创建项目
昨天对项目的思路大致理了一下,今天先把解决方案建立起来.整个解决包含Ninesky.Web.Ninesky.Core,Ninesky.DataLibrary等3个项目.Ninesky.Web是web应 ...
- 从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板
标题:从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板 作者:Lamond Lu 地址:https://www.cnblogs.com/lwqlun/p/11155 ...
- node+vue进阶【课程学习系统项目实战详细讲解】打通前后端全栈开发(1):创建项目,完成登录功能
第一章 建议学习时间8小时·分两次学习 总项目预计10章 学习方式:详细阅读,并手动实现相关代码(如果没有node和vue基础,请学习前面的vue和node基础博客[共10章]) 视频教程地 ...
- XAF应用开发教程(七)外观控制模块
很多时候,我们需要按照不同的条件显示不同的效果,在传统的软件开发中,我们会直接使用 控件名称.BackColor,Enable,Visible等属性进行控制. 如果一个业务对象在多处使用,要么我们会去 ...
- App开发流程之创建项目和工程基本配置
我的开发环境为:Mac OS X EI Capitan(10.11.6),Xcode 7.3.1 首先说明一下这个项目的初衷,我并非要创建一个完整的上架应用,旨在创建一个可运行的,通用配置.架构,提供 ...
- XAF应用开发教程(六)控制器
是的,XAF也是MVC结构的,但不仅限于MVC,ViewModel也存在,它是一项复合技术,AOP,ORM,MVC都有. 真实运行的系统中,仅有增删改查功能肯定是远远不够的,ERP.CRM等系统的开发 ...
- XAF应用开发教程(四)应用程序模型
XAF是重量型框架,确实够重量的,方方面面都做得规规矩矩. 如果看了前面三节,可能会认为,这N多的Attribute到底都是从哪里来的?到底有多少这样的Attribute?如果不够用了怎么办?等着官方 ...
随机推荐
- Ubuntu 14.04 安装 JDK 7.0
1.新建jvm文件夹-解压 # mkdir /usr/lib/jvm # tar zxvf jdk-7u79-linux-x64.gz -C /usr/lib/jvm 2.设置环境变量,在/etc/p ...
- SQLServer学习笔记<>.基础知识,一些基本命令,单表查询(null top用法,with ties附加属性,over开窗函数),排名函数
Sqlserver基础知识 (1)创建数据库 创建数据库有两种方式,手动创建和编写sql脚本创建,在这里我采用脚本的方式创建一个名称为TSQLFundamentals2008的数据库.脚本如下: ...
- android使用其他应用打开文件
根据文件的MIME类型来判断,手机中有哪些应用可以打开这个文件,然后把应用在弹窗列表中显示 /** * 打开文件 * * @param file */ public static void openF ...
- 【转】用 SVN Importer 实现 CSVNT 到 SVN 的转换
转载地址:http://www.blogjava.net/yongbing/archive/2007/03/04/101761.html 用 SVN Importer 实现 CSVNT 到 SVN 的 ...
- cookie存储记录
////// 历史记录 $(function () { // 标题 var art_title = $("#Lbl_Hotel_Name").text(); // 得到当前路径 v ...
- css不同浏览器兼容性调试 --- 转自: [http://wo.115.com/?ct=detail&id=31733&bid=1018841]
css不同浏览器兼容性调试 IE6.0,IE7.0与Firefox的CSS兼容性问题1.DOCTYPE 影响 CSS 处理 2.FF: div 设置 margin-left, margin-right ...
- SQL-字符串合并
create table tb(id int, value varchar(10)) insert into tb values(1, 'aa') insert into tb values(1, ...
- 花40分钟写一个-CBIR引擎-代码公开
浏览网页的时候发现一篇不错的文章"用Python和OpenCV创建一个图片搜索引擎的完整指南"http://python.jobbole.com/80860/.作者在浏 ...
- Unity-Animator深入系列---Foot IK
回到 Animator深入系列总目录 最近在做一个demo,遇到了角色跑动不自然的问题(注意双腿): 后来得知勾选FootIK之后Unity会智能修复这类问题: 好像这个功能还能做到斜面地形匹配,不过 ...
- Uva 1599 最佳路径
题目链接:https://uva.onlinejudge.org/external/15/1599.pdf 题意: 保证在最短路的时候,输出字典序最小的路径. 方法: 路径上有了权值,可以利用图论的数 ...