RSS

导航







快速搜索

高级搜索 »

注意:此页面是Spring.NET框架 1.1 参考文档的一部分。


编辑

24.1. XML编辑与验证

(Available in 1.0)

如果您习惯于用自己钟爱的XML编辑器编写XML文档,那么应该会对本章的大部分内容感兴趣。在运行期,Spring.NET使用对象定义schema验证XML数据。对象定义的XML数据可以保存在任何IResource接口所支持的位置(可以参考6.1,简介)。如果要用独立的XML文件保存对象定义,在.NET应用程序配置中,应该这样配置<context>节点:

<spring>

  <context>
    <resource uri="file://objects.xml"/>
  </context>

</spring>

VS.NET 2005的XML编辑器能利用xsi:schemaLocation属性来关联一个schema文件,用它来为正在编辑的XML文档进行代码提示。 VS.NET 2002/2003不能识别该属性。如果用下面代码中的方法引用Spring.NET的XML schema,在VS.NET 2005中编辑配置文件时就能看到代码提示,也可对文档进行验证。如果想在VS.NET 2002/2003中使用这些功能,则需要在VS.NET中注册这个schema,或者将它包含到当前的项目当中。

<?xml version="1.0" encoding="UTF-8"?>
<objects xmlns="http://www.springframework.net" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://www.springframework.net http://www.springframework.net/xsd/spring-objects.xsd">
  <object id="..." type="...">
  ...
  </object>
  <object id="..." type="...">
  ...
  </object>
  ...
</objects>

将schema文件安装进VS.NET会更为方便,对于VS.NET 2005来说也是如此,因为这可以避免Xml文件过于冗长,也不用每创建一个项目就需要复制schema的路径。要将schema文件安装到VS.NET中,可以将它们复制到以下目录:

VS2003:C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Packages\schemas\xml



VS2002:C:\Program Files\Microsoft Visual Studio .NET\Common7\Packages\schemas\xml

对VS.NET 2005来说,则是:

C:\Program Files\Microsoft Visual Studio 8\Xml\Schemas

还可以利用Spring.NET的doc/schema目录下的NAnt脚本文件来安装这些Schema。执行了这个脚本之后,spring-object.xsd文件就会被复制到正确的位置。

安装了schema之后,在VS.NET的编辑器中,只要objects节点包含xmlns="http://www.springframework.net"属性,VS就可以利用这个schema来进行代码提示了:

<?xml version="1.0" encoding="UTF-8"?>
<objects xmlns="http://www.springframework.net">
  <object id="..." type="...">
  ...
  </object>
  <object id="..." type="...">
  ...
  </object>
  ...
</objects>

另外,也可以在配置文件的属性中通过Schemas来选择xsd文件。

在4.7,与IObjectFactory交互一节中曾经提过,可以在.NET的应用程序配置文件中存放对象定义,如下:

<configuration>

  <configSections>
    <sectionGroup name="spring">
      <section name="context" type="Spring.Context.Support.ContextHandler, Spring.Core"/>
      <section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />
    </sectionGroup>
  </configSections>

  <spring>

    <context>
      <resource uri="config://spring/objects"/>
    </context>
       
    <objects xmlns="http://www.springframework.net">
        ...
    </objects>

  </spring>

</configuration>

此时,VS.NET 2002/2003也能进行代码提示,但是因为没有为整个App.config文档提供schema,所以无法执行全面验证。要进行全面验证需要安装.NET Configuration File schema,并将节点也加入到该schema中。

验证schema是VS 2005的新功能,在编辑时,可以在VS 2005的错误列表窗口看到文档中的错误。

关于如何存放对象定义的配置数据,好的习惯是保留App.config的原型,而在其它兼容IResource的位置或文件中存放Spring.NET的配置,对于比较重要的项目,可以存放在程序集的内嵌资源中。

顶部

编辑

24.2. XML Schema的版本

为了支持泛型,Spring.NET 1.0.2的schema已经与1.0.1有所不同。1.0.1版的schema位于http: //www.springframework.net/xsd/1.0.1/。最新版会始终放在http: //www.springframework.net/xsd/。

顶部

编辑

24.3. 集成API文档

在安装过程中,Spring.NET会将文档注册到Visual Studio。文档有两个版本,分别针对VS.NET 2002/2003和VS.NET 2005。这两个版本只在格式上有差别,VS.NET 2005版的文档使用的是新格式,比较酷。哈!

顶部

.NET 藏经阁 | | 版权所有 ©2008 entlib.net.cn