Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/aspnetwebstack.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/System.Web.Mvc/AjaxHelper.cs')
-rw-r--r--src/System.Web.Mvc/AjaxHelper.cs83
1 files changed, 83 insertions, 0 deletions
diff --git a/src/System.Web.Mvc/AjaxHelper.cs b/src/System.Web.Mvc/AjaxHelper.cs
new file mode 100644
index 00000000..ab2d82cb
--- /dev/null
+++ b/src/System.Web.Mvc/AjaxHelper.cs
@@ -0,0 +1,83 @@
+using System.Diagnostics.CodeAnalysis;
+using System.Web.Routing;
+
+namespace System.Web.Mvc
+{
+ public class AjaxHelper
+ {
+ private static string _globalizationScriptPath;
+
+ private DynamicViewDataDictionary _dynamicViewDataDictionary;
+
+ public AjaxHelper(ViewContext viewContext, IViewDataContainer viewDataContainer)
+ : this(viewContext, viewDataContainer, RouteTable.Routes)
+ {
+ }
+
+ public AjaxHelper(ViewContext viewContext, IViewDataContainer viewDataContainer, RouteCollection routeCollection)
+ {
+ if (viewContext == null)
+ {
+ throw new ArgumentNullException("viewContext");
+ }
+ if (viewDataContainer == null)
+ {
+ throw new ArgumentNullException("viewDataContainer");
+ }
+ if (routeCollection == null)
+ {
+ throw new ArgumentNullException("routeCollection");
+ }
+ ViewContext = viewContext;
+ ViewDataContainer = viewDataContainer;
+ RouteCollection = routeCollection;
+ }
+
+ public static string GlobalizationScriptPath
+ {
+ get
+ {
+ if (String.IsNullOrEmpty(_globalizationScriptPath))
+ {
+ _globalizationScriptPath = "~/Scripts/Globalization";
+ }
+ return _globalizationScriptPath;
+ }
+ set { _globalizationScriptPath = value; }
+ }
+
+ public RouteCollection RouteCollection { get; private set; }
+
+ public dynamic ViewBag
+ {
+ get
+ {
+ if (_dynamicViewDataDictionary == null)
+ {
+ _dynamicViewDataDictionary = new DynamicViewDataDictionary(() => ViewData);
+ }
+ return _dynamicViewDataDictionary;
+ }
+ }
+
+ public ViewContext ViewContext { get; private set; }
+
+ public ViewDataDictionary ViewData
+ {
+ get { return ViewDataContainer.ViewData; }
+ }
+
+ public IViewDataContainer ViewDataContainer { get; internal set; }
+
+ [SuppressMessage("Microsoft.Performance", "CA1822:MarkMembersAsStatic", Justification = "Instance method for consistency with other helpers.")]
+ public string JavaScriptStringEncode(string message)
+ {
+ if (String.IsNullOrEmpty(message))
+ {
+ return message;
+ }
+
+ return HttpUtility.JavaScriptStringEncode(message);
+ }
+ }
+}