2012年1月18日

聊聊.net程序设计——浅谈使用VS2010建模拓展(续)[转]

最近公司有2个项目将要上线,所以一直在加班(行业的潜规则)一直也没有时间写些自己感兴趣的东西,今天正好偷懒了没有加班提前回家,想着将前些时候写的《聊聊.net程序设计——浅谈使用VS2010建模拓展(下)》完善一下,所以有了这个续篇。

我们闲话少说言归正传,之前我对VS2010的建模拓展的正向及逆向工程进行了描述,虽然使用尚浅但还是将其中的一些使用方法介绍了一下。在充实自己的时候也希望可以帮助到刚刚接触这个拓展应用的人。

今天我想介绍一下“层关系图”及如何对照“层关系图”验证.net代码?

首先、“层关系图”能做什么?

层关系图可帮助您可视化应用程序的逻辑依赖项结构。 若要确保不会意外引入结构更改,可在每次签入时针对模型验证代码。(来自MSDN)

层关系图可直观显示系统的高级体系结构并可确保代码与设计保持一致。

IC372823

这张图来自MSDN,它表示了层之间的关系,各层之间描述了预期的依赖关系。使用层关系图,可以使代码更易于理解、更新和维护。

下面我们结合我们前面的Demo来使用“层关系图”。

2011-10-26 20-23-36

这是我们上个Demo 的代码逻辑结构,我们这里主要有如上图的几个工程项目,下面我们以”ZY.TestModeling.Implement”为例来创建一个新的层关系图。

首先、我们在VS2010的菜单栏中点击【体系结构(C)】然后选择【新建关系图】,如下图

2011-10-26 20-26-09

然后弹出“添加新关系图”对话框,然后设置名称,选择“添加到建模项目”我这里是添加到之前已有的建模项目,当然你也可以“新建建模项目”。

2011-10-26 20-28-49

你还可以在相同的建模项目内复制现有的层关系图。复制现有层关系图具体步骤为先创建一个新的层关系图,然后将原来层关系图中的元素拷贝到新层关系图中即可。

你可以通过“工具箱”来创建你所需要的层结构及细节

2011-10-26 20-36-09

还可以将已经存在的代码实现拖入到层关系图中,还可以通过“体系结构资源管理器”中拖动相关类或者命名空间等到层关系图中,如

2011-10-26 20-40-33

还可以将多个项目拖动到层关系图中创建单个层

2011-10-26 20-41-55

2011-10-26 20-43-37

还可以将一个层拖动到另一个层中生存嵌套的层,当然这个是否有必要主要取决于你自己的设计。

选中一个层右键点击“查看连接”就可以关联到具体的相关项目,如

2011-10-26 20-47-27

层和层之间如果有依赖关系我们可以使用“工具箱”中的2011-10-26 20-55-15来建立依赖关系。

还可以对层之间的现有依赖关系进行反向工程处理,选中关系图中的层点击【生成依赖项】

2011-10-26 21-16-36

这样就对现有的依赖关系进行了反向工程的处理。

下面我们来说一下如何从打开的层关系图中验证代码,其实很简单,就是在关系图中右键单击层关系图,然后选择“验证体系结构”就可以对代码进行验证了,验证的主要目的是看是否代码与设计一致。对照层关系图验证代码有助于在代码演变过程中强制对代码实施体系结构约束。

2011-10-26 21-24-53

以上就是对层关系图及其如何验证进行的描述讲解,如有不讲的不清楚的地方还请及时指出。

同时欢迎各位一同研究探讨

posted @ 2012-01-18 17:10 遥望星空 阅读(13) 评论(0) 编辑

聊聊.net程序设计——浅谈使用VS2010建模拓展(下)[转]

昨天我介绍了使用VS2010建模拓展的正向工程示例代码,介绍了如何建模及如何导出工程文件,今天我们将来讨论如何从已有代码中逆向工程出UML设计类图。

首先,我们先来创建我们将要逆向工程的项目文件,项目很简单为了演示全面,我们分别建立了3个工程项目(类库),如图:

2011-10-14 22-25-21

该项目主要实现数据的加减乘除4种简单计算操作,主要为了演示怎样逆向工程及如何导出依赖项。

下面分别介绍一下这3个类库的功能:

ZY.TestModeling.InterfaceDefine——该类库主要功能为接口声明。

ZY.TestModeling.Implement——该类库主要负责功能实现(这里使用了策略模式对算法进行封装)。

ZY.TestModeling.UI——顾名思义该类库为用户接口UI界面主要负责UI程序与用户交互。

这样我们项目结构清晰了,下面来看如何使用VS2010拓展进行逆向工程。

首先、我们应该创建我们所需用的类图文件,如何操作呢?即我们右键点击解决方案,然后选择【添加】-》【新建项目】

然后再新建项目对话框中选择【建模项目】设置项目名称及存储位置后点击【确定】

这样在解决方案下将自动生成建模项目

2011-10-14 22-43-04

然后选中该项目点击Visual Studio 2010中的菜单栏【体系结构】-》【新建关系图】

2011-10-14 22-44-07

然后弹出新建关系图对话框,选择“UML类图”设置名称及添加到的建模项目后点击【确定】

2011-10-14 22-44-42

将在建模项目下生成一个.classdiagram文件,该文件即类图项目文件,双击打开生成的类图文件。

2011-10-14 22-48-18

然后、在Visual studio 2010的菜单栏中选择【体系结构】-》【窗口】-》【体系结构管理器】,如图:

2011-10-14 22-31-28

这样会出现”体系结构资源管理器窗口”

2011-10-14 22-33-58

这里主要有两种视图方式,分别为“解决方案视图”及“类视图”

解决方案视图即按解决方案中的层次项目目录进行体系结构展示

2011-10-14 22-35-53

类视图即按类的层次项目目录进行体系结构展示

2011-10-14 22-37-48

这里我们使用“解决方案视图”方式进行体系结构展示,在子项目窗口中选中将要逆向工程的项目,这样在右边将出现“文件”浮动窗口,在该窗口中将展示出被选中的3个项目的所有文件,选中所有文件后将出现”类型”浮动窗口

2011-10-14 22-50-06

2011-10-14 22-53-44

2011-10-14 22-57-27

按住鼠标左键将选中类型拖动到类图文件中松开鼠标左键,这样我们的逆向工程类图就生成了。怎么样简单吧!

2011-10-14 22-58-48

最终结果为

无标题

这里还有一个不得不提的地方就是,在生成的类图中可以选中某个类右键点击【View Code】,这样就可以直接调转到类图的具体实现文件了,开可以双击类图中的某个“特性”或者“操作“都可以直接定位到实现代码,这种操作确实很实用也很便利!

2011-10-14 23-04-22

同时还可以生成依赖项关系图,我觉得这个功能也很强大,它可以将项目中所依赖的DLL全部以图形化方式展示出来,并将依赖关系展现出来,甚至可以定位到具体的依赖函数。

如何使用呢?

点击Visual Studio 2010菜单栏中的【体系结构】-》【生成依赖项关系图】

具体用5个子项可供选择,

按程序集,

按命名空间,

按类,

By Include File,

自定义

自己可以根据自己需要进行依赖项关系图的生成

2011-10-14 23-07-05

这里我们选用”按程序集“生成

2011-10-14 23-12-37

生成后

2011-10-14 23-13-32

点击【2011-10-14 23-14-18】按钮,即可以将内部细节展现出来,支持子项继续展开,不能不说微软确实很强大

2011-10-14 23-16-00

同样双击图中的方法可以直接定位到具体的代码实现。

这样我们的逆向工程就完成了。

希望大家热烈 讨论,共同研究。以后有时间我还会写一些高级的应用,希望与大家一同探讨!

posted @ 2012-01-18 17:09 遥望星空 阅读(10) 评论(0) 编辑

聊聊.net程序设计——浅谈使用VS2010建模拓展(上)[转]

因为在平时工作中一直用Rational Rose或者EA等UML建模工具来实现UML图的设计绘制,当然它们也支持正向及逆向工程。但一直感觉使用起来不能和Visual Studio很好的结合起来。直到今天我在微软官网发现了一个拓展即:Visual Studio 2010的可视化和建模工具包

自己小试了一下发现这是个非常强大,使用也很便捷的拓展,下面具体说明一下本人是怎么使用该拓展的。

首先,需要安装VS2010 Ultimate(aspx?displaylang=zh-cn&FamilyID=06a32b1c-80e9-41df-ba0c-79d56cb823f7">下载)。

然后,下载 Visual Studio 2010的可视化和建模工具包:http://www.2cto.com/uploadfile/2011/1015/20111015035623739.rar
 

Visual Studio 2010的可视化和建模工具包下载完成后是2个.vsix拓展文件,一个是建模工具包,一个是运行时,如下图:

logo

双击直接安装即可,安装后开启VS2010,在新建项目对话框中会多了一项“建模项目”如下图:

2011-10-13 22-59-15

其中包括:

Layer Designer Command Extension——即向层关系图添加命令和特定动作,具体请参见:向层关系图添加命令和特点动作

Layer Designer Gesture Extension——即在图层图表中加入命令和轨迹,具体请参见:在图层图表中加入命令和轨迹

Layer Designer Validation Extension——即向层关系图添加自定义体系结构验证,具体请参见:向层关系图添加自定义体系结构验证

建模项目——今天我们主要讨论该模板。

选中“建模项目”模板,设置名称为“TestModelingProject”及设置存储路径,点击【确定】按钮。

这样我们就创建了一个建模项目,在VS2010中的解决方案资源管理器中会看到如下图:

2011-10-13 23-12-45

选中TestModelingProject建模项目,然后点击IDE菜单栏中的【体系结构】菜单项然后选择【新建关系图】

2011-10-13 23-16-54

弹出关系图选择页面

2011-10-13 23-18-13

目前共有如下几种关系图类别,我们以UML类图为例,来建立我们自己的程序UML。

设置名称及添加到建模项目后点击【确定】按钮。会自动在IDE中生成类关系图。

2011-10-13 23-21-37

点击IDE左侧的“工具箱”DockPanel,在工具箱中会出现类图中常用的图形,如

2011-10-13 23-23-21

我们先建立一个Demo,即向画布中拖拽一个接口及两个类,分别命名为:IDemo,Demo1,Demo2,在接口中有一个方法约定即:int GetMaxValue(List<Int> list),两个类分别实现该接口,如

2011-10-13 23-31-31

这里介绍一下接口或类型图中该如何添加“特性”及“操作”,如添加一个操作即一个方法,首先选中“操作”行右键点击【添加】-》【操作】

2011-10-13 23-28-29

然后再属性DockPanel中设置相关参数及返回值类型等

2011-10-13 23-30-29

设置参数点击“Parameters”属性中右边的浏览按钮“2011-10-13 23-36-14”,弹出操作参数集合编辑器窗口,对参数进行设置

2011-10-13 23-30-09

这样我们的方法就建立成功了,“特性”的创建和方法类图,这里就不再一一介绍,这样我们接口和类就创建成功了。

下面我们来将建好的UML类图导出来,如何操作呢?如下:

Ctrl+A选中接口和类图,右键点击【GenerateCode】

2011-10-13 23-39-48

这时会提示选择类模板对话框

2011-10-13 23-40-58

点击【确定】按钮,开始创建工程

2011-10-13 23-41-24

最终我们的UML类图被正向工程导出为如下图的类库

2011-10-13 23-43-00

最终会输出一些日志信息提供查看

2011-10-13 23-44-32

这样我们的一个正向工程就完成了,在下章中我们会讨论逆向工程的相关细节。

由于本人也是刚刚接触对于具体高级应用还不是很了解,所以希望大家一起来讨论,对其中有那些不足还望及时提出

posted @ 2012-01-18 17:08 遥望星空 阅读(9) 评论(0) 编辑

iis7下unc创建虚拟目录访问

以下是几个关键点:

1.两台服务器上必须处于同一局域网,比如website所在服务器叫A(IP:192.168.10.7),上传后的文件存放服务器为B(IP:192.168.10.36)

2.在B上建立一个共享目录 X

3.在A,B二个服务器上都建一个完全一样的用户比如TestUser/123456

4.将B上的共享目录,文件夹访问权限和共享权限完全授权给TestUser(完全控制)

5.在A所在的站点中,建一个虚拟目录,指到UNC目录,在输入用户名/密码时,输入TestUser的用户名和密码

6.目录X中放置web.config,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <handlers accessPolicy="Read, Script" />
        <directoryBrowse enabled="false" />
        <defaultDocument>
            <files>
                <clear />
                <add value="Default.asp" />
            </files>
        </defaultDocument>
        <httpErrors>
            <clear />
        </httpErrors>
    </system.webServer>
</configuration>

posted @ 2012-01-18 14:53 遥望星空 阅读(10) 评论(0) 编辑

IIS7.5由于权限不足而无法读取配置文件的解决办法

打开iis7.5管理器,在最左侧选择你的网站,在最右侧有个“基本设置...”-“连接为...” ,然后选择特定用户(不要选择应用程序用户。)设置你当前登录电脑所使用的用户名名密码,保存配置,刷新问题是搞定。

posted @ 2012-01-18 14:49 遥望星空 阅读(24) 评论(0) 编辑

导航

<2012年1月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
2930311234

公告

昵称:遥望星空
园龄:4年1个月
粉丝:9
关注:2

搜索

 
 

常用链接

最新随笔

我的标签

随笔分类(280)

随笔档案(292)

技术联盟

积分与排名

  • 积分 - 64575
  • 排名 - 1646

最新评论

阅读排行榜

评论排行榜

推荐排行榜