本文整理汇总了C#中System.Web.Mvc.ViewContext类的典型用法代码示例。如果您正苦于以下问题:C# ViewContext类的具体用法?C# ViewContext怎么用?C# ViewContext使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ViewContext类属于System.Web.Mvc命名空间,在下文中一共展示了ViewContext类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ColorPicker
public ColorPicker(ViewContext viewContext, IJavaScriptInitializer initializer, ViewDataDictionary viewData)
: base(viewContext, initializer, viewData)
{
Palette = ColorPickerPalette.None;
Enabled = true;
Buttons = true;
}
示例2: Render
public void Render(ViewContext viewContext, TextWriter writer)
{
using (MiniProfiler.Current.Step("Render " + (isPartial ? "partial" : "") + ": " + name))
{
wrapped.Render(viewContext, writer);
}
}
示例3: Add
public JsonResult Add(string name, string visitDate, string arrivalDate, string contact, string emailAddress, int visitType, int officeID, int eventID, int convensionID, int serviceID, int fsmID, int bookingStatus, float gsbAmount, float donationAmount)
{
var audienceManager = new DataAccess.AudienceManager();
var visitDateTime = Convert.ToDateTime(visitDate);
DateTime? arrivalDateTime = string.IsNullOrEmpty(arrivalDate) ? (DateTime?)null : Convert.ToDateTime(arrivalDate);
var audienceID = audienceManager.Add(name, contact, emailAddress, visitDateTime, arrivalDateTime, visitType, officeID, eventID, fsmID, convensionID, serviceID, bookingStatus, gsbAmount, donationAmount);
if (audienceID != 0)
{
using (var sw = new StringWriter())
{
var fsmSelectionMail = audienceManager.GetFSMSelectionSlipByAudienceID(audienceID);
ViewData.Model = fsmSelectionMail;
ViewEngineResult viewResult = ViewEngines.Engines.FindPartialView(ControllerContext, "FSMSelectionMail");
ViewContext viewContext = new ViewContext(ControllerContext, viewResult.View, ViewData, TempData, sw);
try
{
viewResult.View.Render(viewContext, sw);
audienceManager.SendSelectionSlipMail(fsmID, emailAddress, sw.GetStringBuilder().ToString());
}
catch (Exception ex)
{ }
}
}
return Json(audienceID);
}
示例4: VeneerScripts_handles_content_types_with_no_scripts
public void VeneerScripts_handles_content_types_with_no_scripts()
{
// Arrange
var service = new Mock<IContentService>();
var content = new Content
{
RefreshDate = DateTime.Now,
Sections = new List<ContentSection>
{
new ContentSection
{
Id = "Footer", Html = "<div id='hello' />", Scripts = new List<ContentScript>()
}
}
};
service.Setup(x => x.Get(It.IsAny<ContentTypes>())).Returns(content);
var contentTypes = new List<ContentTypes> { ContentTypes.Footer };
var model = new VeneerBaseViewModel(service.Object, contentTypes);
var viewContext = new ViewContext();
var viewDataContainer = new Mock<IViewDataContainer>();
var htmlHelper = new HtmlHelper(viewContext, viewDataContainer.Object);
// Act
var result = htmlHelper.VeneerScripts(model).ToHtmlString();
// Assert
Assert.That(result, Is.Empty);
}
示例5: ScriptRegistrar
/// <summary>
/// Initializes a new instance of the <see cref="ScriptRegistrar"/> class.
/// </summary>
/// <param name="scripts">The scripts.</param>
/// <param name="scriptableComponents">The scriptable components.</param>
/// <param name="viewContext">The view context.</param>
/// <param name="assetItemMerger">The asset merger.</param>
/// <param name="scriptWrapper">The script wrapper.</param>
public ScriptRegistrar(WebAssetCollection scripts, IList<IScriptableComponent> scriptableComponents, ViewContext viewContext, IWebAssetCollectionResolver resolver, ScriptWrapperBase scriptWrapper)
{
this.resolver = resolver;
if (viewContext.HttpContext.Items[Key] != null)
{
throw new InvalidOperationException(Resources.TextResource.OnlyOneScriptRegistrarIsAllowedInASingleRequest);
}
viewContext.HttpContext.Items[Key] = this;
OutputScriptFiles = true;
DefaultGroup = new WebAssetGroup("default", false) { DefaultPath = WebAssetDefaultSettings.ScriptFilesPath };
Scripts = scripts;
Scripts.Insert(0, DefaultGroup);
this.scriptableComponents = scriptableComponents;
ViewContext = viewContext;
ScriptWrapper = scriptWrapper;
AssetHandlerPath = WebAssetHttpHandler.DefaultPath;
OnDocumentReadyActions = new List<Action>();
OnDocumentReadyStatements = new List<string>();
OnWindowUnloadActions = new List<Action>();
OnWindowUnloadStatements = new List<string>();
}
示例6: Render
public void Render(ViewContext viewContext, TextWriter writer)
{
if (writer == null)
throw new ArgumentNullException("writer");
// Reading the file content
var text = File.ReadAllText(_filepath);
// Page doctype
var doctype = "<!doctype html>";
// Page encoding
var charset = "<meta charset=\"utf-8\" />";
// Page title
var title = "<title>" + Path.GetFileNameWithoutExtension(_filepath) + "</title>";
// Page CSS (if any)
var css = string.IsNullOrWhiteSpace(_cssHref) ?
string.Format(CultureInfo.InvariantCulture, "<style>\n{0}\n</style>", Resources.Style) :
string.Format(CultureInfo.InvariantCulture, "<link rel=\"stylesheet\" href=\"{0}\">", _cssHref);
// Parsing the Markdown content
var markdown = CommonMarkConverter.Convert(text);
// Joining all up
var content = string.Join("\n", doctype, charset, title, css, markdown);
// Writing to the stream
writer.Write(content);
}
示例7: RenderHtmlOutput
private void RenderHtmlOutput(ControllerContext context)
{
IView viewEngineResult = ViewEngines.Engines.FindView(context, this.ViewName, null).View;
var viewContext = new ViewContext(context, viewEngineResult, context.Controller.ViewData, context.Controller.TempData, context.HttpContext.Response.Output);
viewEngineResult.Render(viewContext, context.HttpContext.Response.Output);
}
示例8: CreateEditor
public static Editor CreateEditor()
{
Mock<HttpContextBase> httpContext = TestHelper.CreateMockedHttpContext();
httpContext.Setup(c => c.Request.Browser.CreateHtmlTextWriter(It.IsAny<TextWriter>())).Returns(new HtmlTextWriter(TextWriter.Null));
Mock<IViewDataContainer> viewDataContainer = new Mock<IViewDataContainer>();
viewDataContainer.SetupGet(container => container.ViewData).Returns(new ViewDataDictionary());
Mock<IClientSideObjectWriterFactory> clientSideObjectWriterFactory = new Mock<IClientSideObjectWriterFactory>();
clientSideObjectWriter = new Mock<IClientSideObjectWriter>();
viewContext = TestHelper.CreateViewContext();
viewContext.ViewData = new ViewDataDictionary();
clientSideObjectWriterFactory.Setup(c => c.Create(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<TextWriter>())).Returns(clientSideObjectWriter.Object);
viewContext = TestHelper.CreateViewContext();
viewContext.ViewData = new ViewDataDictionary();
var urlGenerator = new Mock<IUrlGenerator>();
urlGenerator.Setup(url => url.Generate(It.IsAny<RequestContext>(), It.IsAny<INavigatable>())).Returns(string.Empty);
return new Editor(viewContext, clientSideObjectWriterFactory.Object, new Mock<IWebAssetCollectionResolver>().Object, CreateLocalizationService(), urlGenerator.Object)
{
Name = "Editor"
};
}
示例9: ExecuteResult
public override void ExecuteResult(ControllerContext context)
{
if (context == null)
throw new ArgumentNullException("context");
if (string.IsNullOrEmpty(ViewName))
this.ViewName = context.RouteData.GetRequiredString("action");
ViewEngineResult result = null;
if (View == null)
View = FindView(context).View;
using (StringWriter output = new StringWriter())
{
ViewData["_isGriddlySettingsRequest"] = true;
ViewContext viewContext = new ViewContext(context, View, ViewData, TempData, output);
View.Render(viewContext, output);
Settings = ViewData["settings"] as GriddlySettings;
}
if (result != null)
result.ViewEngine.ReleaseView(context, View);
}
示例10: Create
/// <summary>
/// Create a new HtmlHelper with a fake context and container
/// </summary>
/// <returns>HtmlHelper</returns>
public static HtmlHelper Create()
{
var vc = new ViewContext();
vc.HttpContext = new FakeHttpContext();
var html = new HtmlHelper(vc, new FakeViewDataContainer());
return html;
}
示例11: RenderPartial
public static string RenderPartial(this ControllerBase self, string viewName, object model,
bool strip = true)
{
var context = self.ControllerContext;
if (string.IsNullOrEmpty(viewName)) {
viewName = context.RouteData.GetRequiredString("action");
}
self.ViewData.Model = model;
//try {
using (var writer = new StringWriter()) {
var viewResult = ViewEngines.Engines.FindPartialView(context, viewName);
var viewContext = new ViewContext(context, viewResult.View, self.ViewData,
self.TempData, writer);
viewResult.View.Render(viewContext, writer);
var result = writer.GetStringBuilder().ToString();
return strip ? _stripper.Replace(result, StripInvalidChars) : result;
}
//} catch (ArgumentNullException ex) { }
//return "";
}
示例12: ConfigureContext
private Action<IModelValueContainer> ConfigureContext(ViewContext viewContext)
{
return c => {
ConfigureModel(viewContext, c.TalModel);
ConfigureModel(viewContext, c.MetalModel);
};
}
示例13: Render
public void Render(ViewContext viewContext, TextWriter writer)
{
var doc = CreateDocument();
doc.Render(writer,
contextConfigurator: ConfigureContext(viewContext),
options: RenderingOptions);
}
示例14: Render
public void Render(ViewContext viewContext, TextWriter writer)
{
if (writer == null)
{
throw new ArgumentNullException("writer");
}
if (page == null)
{
throw new InvalidOperationException("Cannot create a page from " + viewPath);
}
//damn, now why is this internal, how can you ever reuse the webviewpage then??
//page.OverridenLayoutPath = this.LayoutPath;
if (!String.IsNullOrEmpty(this.LayoutPath))
page.Layout = LayoutPath;
page.VirtualPath = viewPath;
page.ViewContext = viewContext;
page.ViewData = viewContext.ViewData;
page.InitHelpers();
WebPageRenderingBase startPage = null;
if (this.RunViewStartPages)
{
startPage = this.StartPageLookup(page, VirtualPathFactoryManagerViewEngine.ViewStartFileName, this.ViewStartFileExtensions);
}
var httpContext = viewContext.HttpContext;
WebPageRenderingBase base4 = null;
object model = null;
//instead of page.OverridenLayoutPath:
if (!String.IsNullOrEmpty(this.LayoutPath))
page.Layout = LayoutPath;
page.ExecutePageHierarchy(new WebPageContext(httpContext, base4, model), writer, startPage);
}
示例15: RenderSitecorePlaceHolder
public static string RenderSitecorePlaceHolder(string key)
{
var sublayoutId = GetSublayoutIdFromPlaceHolder(Sitecore.Context.Item[Sitecore.FieldIDs.LayoutField], key);
if (!string.IsNullOrEmpty(sublayoutId))
{
var layoutItem = Sitecore.Context.Database.GetItem(ID.Parse(sublayoutId));
var controllerName = layoutItem.Fields["Controller"].Value;
var actionName = layoutItem.Fields["Action"].Value;
HttpContext.Current.RewritePath(string.Concat("/", controllerName, "/", actionName));
RouteData routeData = RouteTable.Routes.GetRouteData(new HttpContextWrapper(HttpContext.Current));
if (routeData != null)
{
var factory = new ControllerFactory();
var httpContextBase = new HttpContextWrapper(HttpContext.Current);
var context = new RequestContext(httpContextBase, routeData);
Type type = factory.GetController(context, controllerName);
if (type != null)
{
var controller = (Controller)factory.GetController(context, type);
var controllerContext = new ControllerContext(httpContextBase, routeData, controller);
var viewContext = new ViewContext(controllerContext, new FakeView(), controller.ViewData, controller.TempData, TextWriter.Null);
var helper = new HtmlHelper(viewContext, new ViewPage());
return helper.Action(actionName, controllerName).ToHtmlString();
}
}
HttpContext.Current.RewritePath("default.aspx");
}
return "";
}