javascriptconverterattribute.cs

来自「AJAX开发工具包」· CS 代码 · 共 39 行

CS
39
字号
using System;

namespace AjaxPro
{
	/// <summary>
	/// Represents an attribute to mark a class to be converted by a specified IJavaScriptConverter.
	/// </summary>
	[AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
	public class JavaScriptConverterAttribute : Attribute
	{
		private Type type = null;

		/// <summary>
		/// Marks a class to be converted by the specified JavaScript converter.
		/// </summary>
		/// <param name="type">The IJavaScriptConverter to use to serialize or deserialize.</param>
		public JavaScriptConverterAttribute(Type type)
		{
			if(!(typeof(IJavaScriptConverter).IsAssignableFrom(type)))
				throw new InvalidCastException();

			this.type = type;
		}

		#region Internal Methods

		internal IJavaScriptConverter Converter
		{
			get
			{
				object o = Activator.CreateInstance(type);
				return (IJavaScriptConverter)o;
			}
		}

		#endregion
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?