惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

C
CXSECURITY Database RSS Feed - CXSecurity.com
S
Schneier on Security
N
News and Events Feed by Topic
量子位
S
Secure Thoughts
V2EX - 技术
V2EX - 技术
Hugging Face - Blog
Hugging Face - Blog
S
Security Affairs
J
Java Code Geeks
Schneier on Security
Schneier on Security
Google Online Security Blog
Google Online Security Blog
TaoSecurity Blog
TaoSecurity Blog
小众软件
小众软件
S
SegmentFault 最新的问题
www.infosecurity-magazine.com
www.infosecurity-magazine.com
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Security Archives - TechRepublic
Security Archives - TechRepublic
P
Privacy International News Feed
酷 壳 – CoolShell
酷 壳 – CoolShell
美团技术团队
博客园 - 聂微东
T
Tor Project blog
博客园 - Franky
C
CERT Recently Published Vulnerability Notes
Cyberwarzone
Cyberwarzone
罗磊的独立博客
博客园_首页
The Cloudflare Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 三生石上(FineUI控件)
大猫的无限游戏
大猫的无限游戏
Forbes - Security
Forbes - Security
V
Vulnerabilities – Threatpost
Security Latest
Security Latest
腾讯CDC
Simon Willison's Weblog
Simon Willison's Weblog
S
Securelist
博客园 - 【当耐特】
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Threat Research - Cisco Blogs
博客园 - 司徒正美
AWS News Blog
AWS News Blog
WordPress大学
WordPress大学
Jina AI
Jina AI
G
GRAHAM CLULEY
V
V2EX
L
LINUX DO - 最新话题
H
Heimdal Security Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
IT之家
IT之家

博客园 - 圣炎¢天乐

Eds 公司 武汉 2008.2招聘 EDS 公司专用英文简历模板 GAT&GAX群 (转)聚簇索引与非聚簇索引的区别以及SQL Server查询优化技术 GAT & GAX 简介 技巧/诀窍:在ASP.NET中重写URL 微软发布WF教程及大量示例 Web Service Software Factory SEO课程笔记(二) SEO课程笔记 InfoPath 2007 的一些开发资源 WPF的最新开发资料和文档 关于WPF的外观设计 - 圣炎¢天乐 - 博客园 WPF数据绑定 Page Controller (页面控制器)和Front Controller(前端控制器) MVC设计模式 编写自定义 HTTP 模块 关于.net中访问InfoPath 2007 的权限配置???? ADO.NET性能改善方法集合
如何写自己的Guidance Packages(一)
圣炎¢天乐 · 2007-06-02 · via 博客园 - 圣炎¢天乐

开发一个guidance package的步骤如下:

  • 定义 recipes ,包括定义参数(arguments), 向导页面(wizards) 和 所执行的操作(actions)
  • 定义 Visual Studio 模板文件(Template)。
  • 设计 actions 。
  • 书写参数类型编辑器和转换器,即editors 和 converters 。
  • 定义 T4 模板 (如果一个 action 需要使用 T4 template 生成代码) 。
  • 测试 package。
  • 绑定 package 安装文件。

一个guidance package 包含下面的部分或者全部的文件:

  • Guidance package 配置文件(是一个XML文档,必须)
  • Visual Studio 模板文件(可使用VS自动生成,然后对生成的模板再做稍微更改即可)
  • T4 模板(以.T4结尾,用于生成代码)
  • 一些DLL文件,包括 actions, type editors, value providers和type converters (建议使用单一的DLL)

以下是一份Guidance package 配置文件,其中有注释:

<?xml version="1.0" encoding="utf-8" ?>
<GuidancePackage xmlns="http://schemas.microsoft.com/pag/gax-core"
    Name
="这里是Guidance package的名字" 
    Caption
="这里是标题"
    Description
="这里是描述"
    Guid
="51FCD4D0-B90C-4f11-B868-E9D71D8B7746" 
        BindingRecipe
="BindingRecipe"
    SchemaVersion
="1.0">
    
<Recipes>
        
<Recipe Name="这里是Recipe 名" Bound="是否有限制可以是true或false" Recurrent="执行后是否重新呈现,可以是true或者false">
            
<Caption>这里是Recipe 标题</Caption>
            
<Description>这里是Recipe 的描述.</Description>
            
<HostData>
                
<Icon ID="1046"/>
                
<CommandBar Name="这里是该Recipe 可以绑定的位置,可供选择的有Solution,Solution Folder,Solution Add,Solution Folder Add,Project,Project Add,Folder,Item,Web Project,Web Item,Web Folder"/>
            
</HostData>         

<GatheringServiceData>
            
<Wizard xmlns="http://schemas.microsoft.com/pag/gax-wizards" SchemaVersion="1.0">
                
<Pages>
                    
<Page>
                        
<Title>这里是Page的标题</Title>
                        
<LinkTitle>这里是收集参数的向导页面的左侧显示的标题</LinkTitle>
                        
<Fields>
                            
<Field ValueName="参数名" Label="显示名"  
                                InvalidValueMessage
="无效输入时显示的信息.">
                                
<Tooltip>提示信息</Tooltip>
                            
</Field>                           

                        
</Fields>
                    
</Page>

                
</Pages>
            
</Wizard>
        
</GatheringServiceData>

<Actions>
                
<Action 
                    
Name="Action名" 
                    Type
="HoLPackage.Actions.HelloWorldAction, HoLPackage" />
            
</Actions>
        
</Recipe>

</Recipes>
</GuidancePackage>