private static string SerializeComponent(IViewModule component) { var nativeObjectMethodsMap = component.Events .Select(g => new KeyValuePair <string, object>(g, JavascriptSerializer.Undefined)) .Concat(component.PropertiesValues) .OrderBy(p => p.Key) .Select(p => new KeyValuePair <string, object>(JavascriptSerializer.GetJavascriptName(p.Key), p.Value)); return(JavascriptSerializer.Serialize(nativeObjectMethodsMap, o => JavascriptSerializer.Serialize(o))); }
public VueApplicationContent( JavascriptSerializer serializer, string name, VueOptions options, IList <IVueComponent> components) { _name = name; _serializer = serializer; _options = options; _components = components; }
public string yourmethodname(string TheData) { JavascriptSerializer YourSerializer = new JavascriptSerializer(); // custom serializer if you need one YourSerializer.RegisterConverters(new JavascriptConverter [] { new YourCustomConverter() }); //deserialization TheData.Deserialize(TheData); //serialization TheData.Serialize(TheData); }
protected void Page_Load(object sender, EventArgs e) { ShopifyAuthorizationState state = HttpContext.Current.Session["Shopify.AuthState"] as ShopifyAuthorizationState; ShopifyAPIClient client = new ShopifyAPIClient(state); string shopData = (string)client.Get("/admin/products.json"); JavascriptSerializer serializer = new JavascriptSerializer(); // Here Product is a object class which contains all of the attribute that JSON has. List <Product> lstProduct = serializer(shopData); GridView1.DataSource = lstProduct; GridView1.DataBind(); }
/// <summary> /// Loads the specified plugins modules in the specified frame. /// </summary> /// <param name="plugins"></param> /// <param name="frameName"></param> public void LoadPlugins(IViewModule[] plugins, string frameName) { var loadArgs = new[] { JavascriptSerializer.Serialize(plugins.Select(m => new object[] { m.Name, // plugin name ViewRender.ToFullUrl(NormalizeUrl(m.MainJsSource)), // plugin source m.GetNativeObjectFullName(frameName), // native object name m.DependencyJsSources.Select(s => ViewRender.ToFullUrl(NormalizeUrl(s))) // plugin dependencies })), JavascriptSerializer.Serialize(frameName) }; ExecuteLoaderFunction("loadPlugins", loadArgs); }
public string EscapeJSObjectValue(object o) { IJSObject ijsobject = o as IJSObject; if (ijsobject != null) { return(this.EscapeJSObject(ijsobject)); } IEnumerable <IJSObject> enumerable = o as IEnumerable <IJSObject>; if (enumerable != null) { return(this.EscapeArray(enumerable)); } return(JavascriptSerializer.SerializeJavascriptObject(o)); }
public string EscapeJSObject(IJSObject o) { ITrackableJSObject trackableJSObject = o as ITrackableJSObject; if (trackableJSObject != null) { if (trackableJSObject.IsTracked) { return("CommonAPI.GetTrackedObject(" + JavascriptSerializer.Serialize(trackableJSObject.TrackingCode) + ")"); } if (trackableJSObject.ConstructorFunction != null) { return(this.CallJSConstructor(trackableJSObject)); } } return(JavascriptSerializer.Serialize(o.ToJavascriptObject())); }
/// <summary> /// Loads the specified react component into the specified frame /// </summary> /// <param name="component"></param> /// <param name="frameName"></param> public void LoadComponent(IViewModule component, string frameName, bool hasStyleSheet, bool hasPlugins) { var mainSource = ViewRender.ToFullUrl(NormalizeUrl(component.MainJsSource)); var dependencySources = component.DependencyJsSources.Select(s => ViewRender.ToFullUrl(NormalizeUrl(s))).ToArray(); var cssSources = component.CssSources.Select(s => ViewRender.ToFullUrl(NormalizeUrl(s))).ToArray(); var nativeObjectMethodsMap = component.Events.Select(g => new KeyValuePair <string, object>(g, JavascriptSerializer.Undefined)) .Concat(component.PropertiesValues) .OrderBy(p => p.Key) .Select(p => new KeyValuePair <string, object>(JavascriptSerializer.GetJavascriptName(p.Key), p.Value)); var componentSerialization = JavascriptSerializer.Serialize(nativeObjectMethodsMap); var componentHash = ComputeHash(componentSerialization); // loadComponent arguments: // // componentName: string, // componentNativeObjectName: string, // componentSource: string, // dependencySources: string[], // cssSources: string[], // maxPreRenderedCacheEntries: number, // hasStyleSheet: boolean, // hasPlugins: boolean, // componentNativeObject: Dictionary<any>, // frameName: string // componentHash: string var loadArgs = new[] { JavascriptSerializer.Serialize(component.Name), JavascriptSerializer.Serialize(component.GetNativeObjectFullName(frameName)), JavascriptSerializer.Serialize(mainSource), JavascriptSerializer.Serialize(dependencySources), JavascriptSerializer.Serialize(cssSources), JavascriptSerializer.Serialize(ReactView.PreloadedCacheEntriesSize), JavascriptSerializer.Serialize(hasStyleSheet), JavascriptSerializer.Serialize(hasPlugins), componentSerialization, JavascriptSerializer.Serialize(frameName), JavascriptSerializer.Serialize(componentHash), }; ExecuteLoaderFunction("loadComponent", loadArgs); }
/// <summary> /// Loads the specified react component into the specified frame /// </summary> public void LoadComponent(IViewModule component, string frameName, bool hasStyleSheet, bool hasPlugins) { var mainSource = ViewRender.ToFullUrl(NormalizeUrl(component.MainJsSource)); var dependencySources = component.DependencyJsSources.Select(s => ViewRender.ToFullUrl(NormalizeUrl(s))).ToArray(); var cssSources = component.CssSources.Select(s => ViewRender.ToFullUrl(NormalizeUrl(s))).ToArray(); var componentSerialization = SerializeComponent(component); var componentHash = ComputeHash(componentSerialization); // loadComponent arguments: // // componentName: string, // componentNativeObjectName: string, // componentSource: string, // dependencySources: string[], // cssSources: string[], // maxPreRenderedCacheEntries: number, // hasStyleSheet: boolean, // hasPlugins: boolean, // componentNativeObject: Dictionary<any>, // frameName: string // componentHash: string var loadArgs = new[] { JavascriptSerializer.Serialize(component.Name), JavascriptSerializer.Serialize(component.GetNativeObjectFullName(frameName)), JavascriptSerializer.Serialize(mainSource), JavascriptSerializer.Serialize(dependencySources), JavascriptSerializer.Serialize(cssSources), JavascriptSerializer.Serialize(ReactView.PreloadedCacheEntriesSize), JavascriptSerializer.Serialize(hasStyleSheet), JavascriptSerializer.Serialize(hasPlugins), componentSerialization, JavascriptSerializer.Serialize(frameName), JavascriptSerializer.Serialize(componentHash), }; ExecuteLoaderFunction("loadComponent", loadArgs); }
public void JavascriptDataSerialization() { Assert.AreEqual("true", JavascriptSerializer.Serialize(true)); Assert.AreEqual("false", JavascriptSerializer.Serialize(false)); Assert.AreEqual("undefined", JavascriptSerializer.Serialize(JavascriptSerializer.Undefined)); Assert.AreEqual("1", JavascriptSerializer.Serialize(1)); Assert.AreEqual("-1", JavascriptSerializer.Serialize(-1)); Assert.AreEqual("1.1", JavascriptSerializer.Serialize(1.1)); Assert.AreEqual("-1.1", JavascriptSerializer.Serialize(-1.1)); Assert.AreEqual("\"hello \\\"world\\\"\"", JavascriptSerializer.Serialize("hello \"world\"")); Assert.AreEqual("1", JavascriptSerializer.Serialize(SerializationEnum.Value1)); Assert.AreEqual("[1,2,3]", JavascriptSerializer.Serialize(new[] { 1, 2, 3 })); Assert.AreEqual("{\"prop-a\":\"value-a\",\"prop-b\":\"value-b\",\"prop-c\":1.1,\"prop-d\":undefined}", JavascriptSerializer.Serialize(new Dictionary <string, object>() { { "prop-b", "value-b" }, { "prop-a", "value-a" }, { "prop-c", 1.1 }, { "prop-d", JavascriptSerializer.Undefined } })); }
/// <summary> /// Shows the specified error message. /// </summary> /// <param name="msg"></param> public void ShowErrorMessage(string msg) { msg = msg.Replace("\"", "\\\""); ExecuteLoaderFunction("showErrorMessage", JavascriptSerializer.Serialize(msg)); }
/// <summary> /// Initializes a new isntance of the MsSql class, with a connection string /// and with the default JavaScriptSerializer /// </summary> /// <param name="connectionString">The connection string to use when making /// connections with this adapter</param> public MsSql(string connectionString) { ConnectionString = connectionString; Serializer = new JavascriptSerializer(); }
/// <summary> /// Initializes a new isntance of the MsSql class, wihtout a connection string /// and with the default JavaScriptSerializer /// </summary> public MsSql() { ConnectionString = String.Empty; Serializer = new JavascriptSerializer(); }
private string SerializeResourceUrl(ResourceUrl resource) { return(JavascriptSerializer.Serialize(NormalizeUrl(ViewRender.ToFullUrl(resource.ToString())))); }
public string EscapeArray(IEnumerable <Dictionary <string, object> > arr) { return(JavascriptSerializer.Serialize(arr)); }
public string EscapeBoolean(bool boolean) { return(JavascriptSerializer.Serialize(boolean)); }
public string EscapeString(string str) { return(JavascriptSerializer.Serialize(str)); }
public string EscapeArray(IEnumerable <string> arr) { return(JavascriptSerializer.Serialize(arr)); }