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

Ajax

开发平台:

C#

  1. using System;
  2. using System.Text;
  3. using System.Collections;
  4. namespace AjaxPro
  5. {
  6. /// <summary>
  7. /// Represents an IJavaScriptConverter.
  8. /// </summary>
  9. public class IJavaScriptConverter
  10. {
  11. /// <summary>
  12. /// Initializes the converter. This method will be called when the application is starting and 
  13. /// any converter is loaded.
  14. /// </summary>
  15. public virtual void Initialize()
  16. {
  17. }
  18. /// <summary>
  19. /// Render the JavaScript code for prototypes or any other JavaScript method needed from this converter
  20. /// on the client-side.
  21. /// </summary>
  22. /// <returns>Returns JavaScript code.</returns>
  23. public virtual string GetClientScript()
  24. {
  25. return "";
  26. }
  27. /// <summary>
  28. /// Converts an IJavaScriptObject into an NET object.
  29. /// </summary>
  30. /// <param name="o">The IJavaScriptObject object to convert.</param>
  31. /// <param name="type">The type to convert the object to.</param>
  32. /// <returns>Returns a .NET object.</returns>
  33. public virtual object Deserialize(IJavaScriptObject o, Type t)
  34. {
  35. return null;
  36. }
  37. /// <summary>
  38. /// Converts a .NET object into a JSON string.
  39. /// </summary>
  40. /// <param name="o">The object to convert.</param>
  41. /// <returns>Returns a JSON string.</returns>
  42. public virtual string Serialize(object o)
  43. {
  44. throw new NotImplementedException("Converter for type '" + o.GetType().FullName + "'.");
  45. }
  46. /// <summary>
  47. /// Returns every type that can be used with this converter to serialize an object.
  48. /// </summary>
  49. public virtual Type[] SerializableTypes
  50. {
  51. get
  52. {
  53. return null;
  54. }
  55. }
  56. /// <summary>
  57. /// Returns every type that can be used with this converter to deserialize an JSON string.
  58. /// </summary>
  59. public virtual Type[] DeserializableTypes
  60. {
  61. get
  62. {
  63. return null;
  64. }
  65. }
  66. }
  67. }