VS 2008 可扩展性开发(五):操作Solution、Project和ProjectItem

前言

说真的,前面几篇随笔读起来会很乏味,写起来更是如此。不过好戏总在后头,从这一篇开始我将介绍在Add-In中对VS的各个元素进行操作,这些会有意思得多。

大多数时候,我们在VS中进行开发,都是从打开解决方案开始,然后找到项目、打开文件进行开发。本文将介绍与此相关的内容。

解决方案、项目和项简介

我相信,这三者对我们.NET开发人员来说是再熟悉不过的了。但它们在AOM(自动化对象模型)的表示方式跟我们想象的会不太一样。看下面的图1,其中涉及的主要元素有解决方案、解决方案文件夹、项目、文件夹、文件。AOM通过Solution接口表示解决方案;Project接口表示解决方案文件夹和项目;ProjectItem接口表示文件夹和文件。下面我会通过一个例子来介绍它们。

简单的代码生成器  

在实际开发中,我们往往需要采用一些特定的技术方案,这些方案就决定了程序的整体架构,表现在程序中就是一些项目、程序集、配置文件的组织。曾经有段时间很喜欢iBATIS.NET,这里就以它的示例项目NPetshop为例进行演示。NPetshop的基本结构如下:

npetshop-arch

图1:NPetshop的程序结构

它的代码可以在NPetshop Source for .NET 2.0一文中找到。External-bin里面是所需要的各个程序集,Domain是实体类,Persistence是数据访问层,Service是业务逻辑层,Presentation是表现逻辑层,Web则负责最终的表现。如果要采用这样的解决方案进行开发,那么在项目开始我们就得花些时间来搭建整个解决方案的框架。通过Add-In,我们可以做到“一次编写,多次使用”。

现在来看看如何从零开始创建一个解决方案。在本例中,大致过程是:

npetshop

图2:解决方案创建过程

下面就来一步步实现。

0)添加命令

在之前的随笔已经向NEnhancer添加了两个命令了,现在需要添加新的命令,这样重复代码又得多一些了,所以在添加命令之前,先将代码重构一下,提取出几个小方法:

C# Code - Connect类的辅助方法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值