小田的空间

生活的理想,是为了理想的生活!

---->>Nothing is impossible for a willing heart.

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  83 随笔 :: 16 文章 :: 136 评论 :: 1 引用

2007年7月30日 #

大家有谁开发过DCS系统,交流交流!
posted @ 2007-07-30 11:20 tianjun 阅读(170) | 评论 (1)编辑

2007年6月19日 #

我们以http://blog.csdn.net/hongbo781202/archive/2004/07/21/47135.aspx中的案例来说明.

1)声明名称空间必须在 <definitions> 元素中提供各种名称空间的声明.<definitions       targetNamespace="http://loans.org/wsdl/loan-approval"      xmlns="http://schemas.xmlsoap.org/wsdl/"      xmlns:xsd="http://www.w3.org/2001/XMLSchema"          xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"            xmlns:lns="http://loans.org/wsdl/loan-approval">三个必须做的外部名称空间声明是 WSDL、SOAP 和 XSD(XML 模式定义)xmlns="http://schemas.xmlsoap.org/wsdl/"是WSDL名称空间xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 是SOAP名称空间,这里因为是用做BPEL4WS,所以

不需要该名称空间xmlns:xsd="http://www.w3.org/2001/XMLSchema"是XSD名称空间

2)编写服务<definitions> 元素包含一个或多个 <portType> 元素,实际上,每个元素都是您希望表示的一系列

operation。或者,您也可以将单个 portType 元素看作是将各种方法组成类的一个逻辑分组。我们称

portType为服务---这就是"WEB服务"这个名称的由来.<portType name="loanServicePT">   <operation name="request">      <input message="lns:creditInformationMessage"/>      <output message="lns:approvalMessage"/>      <fault name="unableToHandleRequest"              message="lns:errorMessage"/>   </operation></portType>可以看出,portType是operation的集合.一个operation是一个方法,那一个portType不就是一个类吗?一个

类,我们可以看作一个服务.

3)指定参数operation指定了输入的参数和输出的参数,在 WSDL 术语中,所有参数称为“消息”。<message name="creditInformationMessage">   <part name="firstName" type="xsd:string"/>   <part name="name" type="xsd:string"/>   <part name="amount" type="xsd:integer"/></message>一个消息可以有多个part元素,part元素指定名称和类型.

4)与SOAP绑定WSDL以一种抽象方式定义了操作和消息,而不考虑实现的细节。实际上,WSDL 的任务是定义或描述 Web

服务,然后提供一个对外部框架的引用来定义 WSDL 用户将如何实现这些服务。可以将这个框架当作

WSDL 抽象定义和它们的实现之间的“绑定(binding)”。一般是与SOAP绑定,当然,也不是必须的.

5)指定实现当您在 UDDI 注册中心发布 Web 服务时,会使用它.最后两个步骤把WSDL与SOAP/UDDI结合起来了.

posted @ 2007-06-19 11:44 tianjun 阅读(1381) | 评论 (0)编辑

2007年6月15日 #

序列化是将对象转换为容易传输的格式的过程。例如,可以序列化一个对象,然后使用 HTTP 通过 Internet 在客户端和服务器之间传输该对象。反之,反序列化根据流重新构造对象。

XML 序列化仅将对象的公共字段和属性值序列化为 XML 流。XML 序列化不包括类型信息。例如,如果 Library 命名空间中有一个 Book 对象,将不能保证它会被反序列化为同一类型的对象。

XML 序列化中最主要的类是 XmlSerializer 类,它的最重要的方法是 Serialize 和 Deserialize 方法。XmlSerializer 创建 C# 文件并将文件编译为 .dll 文件,以执行此序列化。在 .NET Framework 2.0 中,XML 序列化程序生成器工具 (Sgen.exe) 用于事先生成这些序列化程序集,以便与应用程序一同部署,并提高启动性能。XmlSerializer 生成的 XML 流符合万维网联合会 (www.w3.org) XML 架构定义语言 (XSD) 1.0 的建议。另外,生成的数据类型符合标题为“XML Schema Part 2: Datatypes”(英文)的文档。

对象中的数据是用编程语言构造(如类、字段、属性、基元类型、数组,甚至 XmlElement 或 XmlAttribute 对象形式的嵌入 XML)来描述的。您可以选择自己创建用属性批注的类,也可以使用 XML 架构定义工具生成基于现有 XML 架构的类。

如果您有 XML 架构,就可运行 XML 架构定义工具生成一组强类型化为架构并用属性批注的类。当序列化这样的类的实例时,生成的 XML 符合 XML 架构。使用这样的类,就可针对容易操作的对象模型进行编程,同时确保生成的 XML 符合 XML 架构。这是使用 .NET Framework 中的其他类(如 XmlReader 和 XmlWriter 类)分析和写入 XML 流的一种备用方法。有关更多信息,请参见 XML 文档和数据。这些类使您可以分析任何 XML 流。与此相反,当需要 XML 流符合已知的 XML 架构时,请使用 XmlSerializer。

属性控制由 XmlSerializer 类生成的 XML 流,使您可以设置 XML 流的 XML 命名空间、元素名、属性名等。有关这些属性和它们如何控制 XML 序列化的更多信息,请参见使用属性控制 XML 序列化。有关用于控制生成的 XML 的属性表,请参见控制 XML 序列化的属性

XmlSerializer 类可进一步序列化对象并生成编码的 SOAP XML 流。生成的 XML 符合标题为“Simple Object Access Protocol (SOAP) 1.1”(英文)的万维网联合会文档的第 5 节。有关该过程的更多信息,请参见如何:将对象序列化为 SOAP 编码的 XML 流。有关控制生成的 XML 的属性表,请参见控制编码的 SOAP 序列化的属性

XmlSerializer 类生成由 XML Web 服务创建和传递给 XML Web 服务的 SOAP 消息。要控制 SOAP 消息,可将属性应用于 XML Web 服务文件 (.asmx) 中的类、返回值、参数和字段。您可以同时使用在“控制 XML 序列化的属性”中列出的属性和在“控制编码的 SOAP 序列化的属性”中列出的属性,因为 XML Web 服务可以使用文本样式,也可以使用编码的 SOAP 样式。有关使用属性控制 XML Web 服务所生成的 XML 的更多信息,请参见 XML Web 服务的 XML 序列化。有关 SOAP 和 XML Web 服务的更多信息,请参见自定义 SOAP 消息的格式

XmlSerializer 应用程序的安全注意事项

在创建使用 XmlSerializer 的应用程序时,您应当了解以下几点以及它们的影响:

  • XmlSerializer 创建 C# 文件(.cs 文件),并将其编译成 .dll 文件,这些 .dll 文件存储在由 TEMP 环境变量指定的目录中;这些 DLL 文件将发生序列化。

    Note注意

    这些序列化程序集可以使用 SGen.exe 工具事先生成并签名。这一点并不适用于 Web 服务的服务器端。也就是说,只适用于客户端,并且针对手动序列化。

    代码和 DLL 在创建和进行编译时,易于遭受恶意进程的攻击。如果所使用的计算机运行的是 Microsoft Windows NT 4.0 或更高版本,则有可能会有两个或更多用户共享临时目录。如果两个帐户有不同的安全特权,并且具有较高特权的帐户运行一个使用 XmlSerializer 的应用程序,共享临时目录是很危险的。在这种情况下,某一用户可以替换所编译的 .cs 或 .dll 文件,由此破坏计算机的安全。为了避免发生这一问题,请始终确保计算机上的每一帐户都有自己的配置文件。默认情况下,TEMP 环境变量会为每个帐户指向不同的目录。

  • 如果恶意用户向 Web 服务器发送持续的 XML 数据流(拒绝服务攻击),则 XmlSerializer 会一直处理该数据,直到计算机资源不足才停止。

    如果您所使用的计算机运行 Internet 信息服务 (IIS),并且您的应用程序是在 IIS 下运行,就可以避免这类攻击。IIS 带有一个控制门,不会处理大于设定数量(默认值是 4 KB)的数据流。如果您所创建的应用程序不使用 IIS,同时该应用程序使用 XmlSerializer 进行反序列化,则应该实现一个类似的控制门,以防止拒绝服务攻击。

  • XmlSerializer 将使用为其指定的任何类型对数据进行序列化并运行任何代码。

    恶意对象施加威胁的方式有两种。一种是运行恶意代码,另一种是将恶意代码插入到由 XmlSerializer 创建的 C# 文件中。在第一种情况下,如果恶意对象试图运行破坏性过程,代码访问安全性将帮助防止发生任何破坏。在第二种情况下,在理论上,恶意对象有可能会以某种方式将代码插入到由 XmlSerializer 创建的 C# 文件中。尽管对这一问题已进行了彻底的检验,而且这类攻击被认为可能性很小,但您还是应该小心一些,一定不要序列化那些未知类型和不可信类型的数据。

  • 已序列化的敏感数据可能易于遭受攻击。

    XmlSerializer 对数据进行了序列化之后,数据可以被存储为 XML 文件,或存储在其他数据存储区。如果其他进程可以访问您的数据存储区,或是可以在 Intranet 或 Internet 上看到该数据存储区,数据就可能被窃取,并被恶意使用。例如,如果您创建了一个应用程序,对包含信用卡号码的订单进行序列化,这一数据就非常敏感。为了防止发生这一问题,请始终保护您的数据存储区,并对其采取保密措施。

  • 使用 XML 序列化的好处

    XmlSerializer 类在您将对象序列化为 XML 时为您提供完整而灵活的控制。如果您正在创建 XML Web 服务,则可以将控制序列化的属性应用于类和成员,以确保 XML 输出符合特定的架构。

    例如,XmlSerializer 使您能够:

    • 指定应将字段或属性编码为特性还是元素。

    • 指定要使用的 XML 命名空间。

    • 如果字段或属性名不合适,指定元素或特性的名称。

    XML 序列化的另一个好处是:只要生成的 XML 流符合给定的架构,对于所开发的应用程序就没有约束。 假定有这样一个用于描述图书的架构。该架构具有标题、作者、出版商和 ISBN 编号元素。您可以开发一个以您希望的任何方式(例如,作为图书订单或作为图书清单)处理 XML 数据的应用程序。在任何一种情况下,唯一的要求是 XML 流应当符合指定的 XML 架构定义语言 (XSD) 架构。

    XML 序列化注意事项

    使用 XmlSerializer 类时,应考虑下列情况:

    • Sgen.exe 工具专门用于生成序列化程序集,以获得最佳性能。

    • 序列化数据只包含数据本身以及类的结构。不包括类型标识和程序集信息。

    • 只能序列化公共属性和字段。如果需要序列化非公共数据,请使用 BinaryFormatter 类而不是 XML 序列化。

    • 类必须有一个将由 XmlSerializer 序列化的默认构造函数。

    • 不能序列化方法。

    • XmlSerializer 可以以不同方式处理实现 IEnumerable 或 ICollection 的类,条件是这些类满足某些要求,如下所示。

      实现 IEnumerable 的类必须实现带单个参数的公共 Add 方法。Add 方法的参数必须与从 GetEnumerator 方法返回的 IEnumerator.Current 属性所返回的类型一致(多态)。

      除实现 IEnumerable 外还实现 ICollection 的类(如 CollectionBase)必须有一个值为整数的公共 Item 索引属性(在 C# 中为索引器),并且必须有一个整数类型的公共 Count 属性。传递给 Add 方法的参数必须与从 Item 属性返回的类型相同或与该类型的某个基的类型相同。

      对于实现 ICollection 的类,要序列化的值将从索引的 Item 属性检索,而不是通过调用 GetEnumerator 来检索。另外,除返回另一个集合类(实现 ICollection 的集合类)的公共字段之外,将不序列化其他公共字段和属性。有关示例,请参见 XML 序列化的示例

posted @ 2007-06-15 13:32 tianjun 阅读(486) | 评论 (0)编辑

装虚拟光驱后出现自动防护,病毒名称为如下,这是怎么回事?

posted @ 2007-06-15 08:20 tianjun 阅读(141) | 评论 (0)编辑

2007年5月26日 #

Adobe已经正式发布了旗下设计套装的最新版——Creative Suite 3。作为Adobe公司史上最大规模的一次新品发布,CS3分为六种不同版本,总计包含17个新版设计软件,其中首次加入了来自原Macromedia的网页三剑客等产品。

CS3套装分为Design Premium(设计高级版)、Design Standard(设计标准版)、Web Premium(网络高级版)、Web Standard(网络标准版)、Product Premium(产品高级版)、Master Collection(大师收藏版)六大版本,具体组件各不相同,还有一些组件和服务由各个版本共享。CS3中的各个组件均原生支持苹果Mac电脑,只有OnLocation CS3和Ultra CS3两个组件例外,其中前者需要Boot Camp。

当然,CS3中最闪亮的明星莫过于Photoshop CS3。作为Adobe的核心产品,Photoshop CS3历来最受关注,Adobe也在去年底发布了其测试版。选择Photoshop CS3的理由不仅仅是它会完美兼容Vista,更重要的是几十个激动人心的全新特性。限于篇幅,这里不再一一赘述。

在部分版本中还可以发现Flash CS3、Dreamweaver CS3和Fireworks CS3的身影。自2005年Adobe耗资34亿美元并购Macromedia以来,这是Adobe第一次将合双方的产品大规模融在一起,此前的CS2只是增补性地加入了部分Macromedia产品。

可以先体验一下Adobe给我们带来的惊喜吧!

http://www.adobe.com/creativelicense/?trackingid=RUUT&pss=dw_8.0_win_zh_cn_full___20040226

posted @ 2007-05-26 15:38 tianjun 阅读(1167) | 评论 (2)编辑

2007年5月22日 #

让我们拭目以待google的三维界面吧!
posted @ 2007-05-22 11:29 tianjun 阅读(192) | 评论 (0)编辑

2007年5月21日 #

     摘要: XAML是微软公司最近关于Windows Vista WPF开发定义用于描述应用程序表示层的语言工具。它的XAML全名Extensible Application Markup Language,从名字上来看第一感觉和W3C定义的XML很相似(Extensible Markup Language)。在从它们的代码来看,虽然都是标记性语言,但是却有本质的差异,一个是完全自定义的标记,另外一个是依赖W...  阅读全文
posted @ 2007-05-21 14:38 tianjun 阅读(309) | 评论 (0)编辑

     摘要: SilverLight是Windows PresentATIon Foundation的一个子产品,其利用了跨浏览器Web技术进行设计,以实现多操作系统,甚至是移动设备上的无缝运行。和Flash一样,WPF/E 是作为一个浏览器的插件,可以显示矢量图形、动画和视频。  Silverlight集成了多种现有Web技术和设备,它可以在Windows、Mac平台上运行,支持IE、Firefox,甚至Ap...  阅读全文
posted @ 2007-05-21 14:17 tianjun 阅读(15303) | 评论 (21)编辑

2007年5月19日 #

     摘要: 5月18日消息,近日不少电脑用户发现装有诺顿杀毒系统的电脑,在按照诺顿清除病毒的要求重新启动操作系统后,系统出现瘫痪。瑞星公司表示,出现此种情况是由于诺顿杀毒软件升级病毒库后,把Windows XP系统的关键系统文件当作病毒清除,导致重启后系统瘫痪。据了解,截至中午12点已有超过7千名个人用户和近百家企业用户向瑞星客户服务中心求助,更多用户由于系统繁忙无法打入电话。 安全专家表示,安装了MS06-...  阅读全文
posted @ 2007-05-19 08:20 tianjun 阅读(132) | 评论 (0)编辑

2007年5月18日 #

     摘要: Web服务安全及其与支付卡产业(PCI)资料安全标准的一致性是最高用户所关心的问题, Watchfire公司推出的 AppScan Web应用程序弱点评估软件的最新版本旨在解决这些问题。  Web服务安全及其与支付卡产业(PCI)资料安全标准的一致性是最高用户所关心的问题, Watchfire公司推出的 AppScan Web应用程序弱点评估软件的最新版本旨在解决这些问题。今天该公司声明,AppS...  阅读全文
posted @ 2007-05-18 18:04 tianjun 阅读(261) | 评论 (0)编辑