JavaScriptConverterAttribute.cs
上传用户:szgaoree
上传日期:2009-01-05
资源大小:74k
文件大小:1k
源码类别:

Ajax

开发平台:

C#

  1. using System;
  2. namespace AjaxPro
  3. {
  4. /// <summary>
  5. /// Represents an attribute to mark a class to be converted by a specified IJavaScriptConverter.
  6. /// </summary>
  7. [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
  8. public class JavaScriptConverterAttribute : Attribute
  9. {
  10. private Type type = null;
  11. /// <summary>
  12. /// Marks a class to be converted by the specified JavaScript converter.
  13. /// </summary>
  14. /// <param name="type">The IJavaScriptConverter to use to serialize or deserialize.</param>
  15. public JavaScriptConverterAttribute(Type type)
  16. {
  17. if(!(typeof(IJavaScriptConverter).IsAssignableFrom(type)))
  18. throw new InvalidCastException();
  19. this.type = type;
  20. }
  21. #region Internal Methods
  22. internal IJavaScriptConverter Converter
  23. {
  24. get
  25. {
  26. object o = Activator.CreateInstance(type);
  27. return (IJavaScriptConverter)o;
  28. }
  29. }
  30. #endregion
  31. }
  32. }