FormXmlSchema.cs
上传用户:husern
上传日期:2022-03-24
资源大小:534k
文件大小:2k
源码类别:

编辑器/阅读器

开发平台:

C#

  1. // -- FILE ------------------------------------------------------------------
  2. // name       : FormXmlSchema.cs
  3. // project    : Itenso Web User Forms
  4. // created    : Jani Giannoudis - 2008.10.30
  5. // language   : c#
  6. // environment: .NET 2.0
  7. // copyright  : (c) 2008 by Itenso GmbH, Switzerland
  8. // --------------------------------------------------------------------------
  9. using System.Xml;
  10. using System.Xml.Schema;
  11. namespace Itenso.WebUserForms.Data.Form
  12. {
  13. // ------------------------------------------------------------------------
  14. public sealed class FormXmlSchema : XmlSchemaBase
  15. {
  16. // ----------------------------------------------------------------------
  17. private FormXmlSchema()
  18. {
  19. } // FormXmlSchema
  20. // ----------------------------------------------------------------------
  21. public static XmlSchema Schema
  22. {
  23. get
  24. {
  25. if ( schema == null )
  26. {
  27. lock ( mutex )
  28. {
  29. if ( schema == null )
  30. {
  31. schema = LoadSchema( typeof( FormXmlSchema ), "Form.xsd" );
  32. }
  33. }
  34. }
  35. return schema;
  36. }
  37. } // Schema
  38. // ----------------------------------------------------------------------
  39. /// <exception cref="System.Xml.Schema.XmlSchemaException">in case of a schema error</exception>
  40. public static XmlReaderSettings XmlReadSettings
  41. {
  42. get
  43. {
  44. if ( readSettings == null )
  45. {
  46. lock ( mutex )
  47. {
  48. if ( readSettings == null )
  49. {
  50. readSettings = CreateStrictSchemaValidationSettings( Schema );
  51. }
  52. }
  53. }
  54. return readSettings;
  55. }
  56. } // XmlReadSettings
  57. // ----------------------------------------------------------------------
  58. // members
  59. private static readonly object mutex = new object();
  60. private static XmlSchema schema;
  61. private static XmlReaderSettings readSettings;
  62. } // class FormXmlSchema
  63. } // namespace Itenso.WebUserForms.Data.Form
  64. // -- EOF -------------------------------------------------------------------