MVC :: Where Does The EditorTemplates Go In Razor Viewengine
Nov 24, 2010I've just installed the new MVC3 RC ,and have no idea about where the *.ascx template stuffs live in?
View 1 RepliesI've just installed the new MVC3 RC ,and have no idea about where the *.ascx template stuffs live in?
View 1 RepliesI have upgraded my MVC2 project to MVC3 project and now I want to change the viewengine from standard aspx to the Razor viewengine. I have tested to create a new MVC3 project with the Razor viewengine and this works just fine, but now I want to uppgrade my existing MVC3 aspx viewengine project to a project with the Razor viewengine.
View 17 Replieshow i can write
<input type="checkbox" name="@var.ID"/>
if i use it it never work. how i can done it. it's render as well as i write in code. it's not worked as well scottgu define in their blog
The following code works for webform view engine.
<% Model.Categories.ForEach(x => { %>
<li><a href="#">@x.Name</a></li>
<% }) %>
I wrote the above code as below in razor view:
@Model.Categories.ForEach(x => {
<li><a href="#">@x.Name</a></li>
})
But this doesn't work. Is there any way to achieve this in razor view?
I am using Actionfilter to globally filter our HTML comments from all action methods and in all controllers. It simply overrides OnActionExecuting and runs the response through a regex to filter the comments. I am also using RenderAction to render some more complicated widgets in my website. There is no caching in place, I just use Renderactionto keep my code as simple possible.
When calling RenderAction from within a Razor View, I get an error message telling me that "Filtering is not allowed". The problem does not occur when calling RenderAction from within an aspx View. It only occurs when calling RenderAction from within a Razor View. In case it matters: the view being rendered is implemented with ASPX. Is this a bug or a known limitation?
I have a Page.cshtml similar to the following (that does not work):
@{
Layout = "../Shared/Layouts/_Layout.cshtml";
var mycollection = (ViewBag.TheCollection as IQueryable<MyCollectionType>);
}
<h2>@ViewBag.Title</h2>
content here
@if (mycollection != null && mycollection.Count() > 0)
{
@section ContentRight
{
<h2>
Stuff
</h2>
<ul class="stuff">
@foreach (MyCollectionType item in mycollection )
{
<li class="stuff-item">@item.Name</li>
}
</ul>
}
}
As I said, this does not work. I want to not define the section if there's nothing in the collection. Is there any way to have something like this work? If not, what are my other options? I'm very new to this Razor ViewEngine. Edit In my layout i have:
@if(IsSectionDefined("ContentRight"))
{
<div class="right">
RenderSection("ContentRight")
</div>
}
what i don't want is the div to output when the section is empty.
I'm trying to output some Twitter handles in ASP.NET MVC3 in conjunction with the Twitter @Anywhere API, and I haven't been able to figure out how to actually escape the "@" symbol in a Razor view. Does anyone know what the syntax is for escaping the "@" character in Razor? I've tried using <text></text> and that results in a JIT error.
View 2 RepliesIt seems when including a DropDownList in an Editor Template (or a Partial with a HTML prefix) then following code does not select the correct item in the list:
<%: Html.DropDownListFor(model => model.CountryCode, Model.Countries) %>
The works as expected when not in an Editor Template.
Interestingly enough if I apply the code above to both parent view and editor templates, the editor template drop downs are set to that of the the parent view's value.I have simple repro to simulate this problem, should someone want to have a look at it.
I am using ASP.NET MVC 3.0.
I use MVC 2. I'm trying out the sample gave out in tutorial video. I put for example String.ascx in Views/Shared/EditorTemplates.
[Code]....
and lastly in Views using Html.TextboxFor(c=>c.Name)
I also tried to use EditorTemplates in Views/Customer/EditorTemplates folder, creating Customer.ascx and use Html.EditorForModel(). But the output still the same.. no red background in Name textbox where it supposely to have. And in generated html output no background style is written to it.
I'm starting with EditorTemplates and I have this situation: I have and fild int that represents and phone number. In EditorTemplate I'll separate it in 2 textbox. But How can I join (concatenate) it in my action? If possible, I want to still use ModelBinder.
View 1 RepliesI am woking on a MVC project which require me to put all controllers, models and views into a folder called Mvc instead of the project root, I created a custom viewengine, here is the code:
[Code]....
My Application_Start:
[Code]....
It does not work, when I request [URL], I got: The view 'Index' or its master could not be found. The following locations were searched:
~/Mvc/Views/Index.aspx
~/Mvc/Views/Index.ascx
~/Mvc/Views/Shared/Index.aspx
~/Mvc/Views/Shared/Index.ascx
I expect the custom viewengine to find the view at: ~/Mvc/Views/Home/Index.aspx
I've read about how I can create a custom viewengine however is it possible to load an assembly which has a method decorated by my own custom attribute say..[RenderWithView], then I dynamically invoke that method and apply a view engine to it, finally returning the html?
View 3 RepliesI were following the tutorial at this page of how to build my own view engine: [URL] And in hope of just extending the existing RazorViewEngine I made some changes to the code in the tutorial...
[Code]....
The thing is that now when I run my site..I get the following error: CS0246: The type or namespace name 'WebMatrix' could not be found (are you missing a using directive or an assembly reference?) and I just cant find a way to solve this..I have added the references.
i'm upgrading my asp.net mvc app to the MVC 3 from mvc 2. I had everything set up so that there were no areas, but now i have to move the old application into its own area so i can start a new one. The new area is working great, but for some reason, when i try to go into the area where the old app was, it looks for the views to be in the views folder in the root of the app, instead of in the views folder in the area.
View 2 RepliesI am following Chris Pietschmann's solution for theming in ASP.NET MVC.
One thing I have noticed is that the view name is not being retrieved from the ViewLocationCache on subsequent requests. I am using ASP.NET MVC 2.0 RC
When the following code is executed:
this.ViewLocationCache.InsertViewLocation(controllerContext.HttpContext, cacheKey, virtualPath);
and I hover over this.ViewLocationCache it just returns {System.Web.Mvc.NullViewLocationCache} - suggesting nothing was added?
We tried to add a Entity model using Razor here was the syntax: @ModelType BID.Data.Entities.PlumbingPermit
View 4 RepliesI'm following the ASP.NET MVC Tutorial and having started in VB.NET I'm having trouble converting the following razor code:
I have got
<ul>
@For Each g As MvcApplication1.Genre In Model
<li> @g.Name </li>
Next
</ul>
but getting
Attribute Sepcifier is not a complete statement on both the <li> tags. I understand I need to use line continuation but can't figure out where.
I'm all new at MVC, so how do I access the users Profile attributes which are defined in the web.config file.With WebForms I would normally do something like this:
[Code]....
[Code]....
I really can't figure out how to do it in MVC 3 Razor.Would really like to see a working example,
Now that ASP.NET MVC 3 with the new Razor engine has been officially released, is there any official documentation for it?The question asp.net mvc3 razor documentation? has some good links to introductory texts. But I'm looking for a reference documentation that contains a complete description of all @keywords.
View 2 RepliesHere is what I would like to express by Razor:
<b>@parameterMapping.Title</b> (Category: @parameterMapping.Category.Title, Regexp: @parameterMapping.Regexp)
But to make it parseable I have to write it this way:
<b>@parameterMapping.Title</b> <text>(Category: </text> @parameterMapping.Category.Title <text>, Regexp:</text> @parameterMapping.Regexp <text>)</text>
Are there better ways to solve this problem?
How does one create a .cshtml page in an ASP.NET web application? The option to choose Razor is obvious when using MVC - it appears when adding a view. But I can't seem to figure out how to accomplish this in a plain ASP.NET Web Application. Is it even possible?
View 1 RepliesI've recently switched over to using the Razor view engine, and I want to specify a namespace to use in a view. I've tried adding an entry to the Web.config file, ie:
[Code]....
But none of my views recognise any of the classes inside that namespace, so I have to declare the namespace in every view that needs it. why the Web.config approach isn't working?
If I look at the Razor View Engine, then I see a very nice and concise syntax that is not particularly tied to generating html. So I wonder, how easy would it be to use the engine outside asp.net in a "normal" .net environment for example to generate text, code,...
View 3 RepliesWill or is T4MVC compatible with Razor?
[code]....
Does it make sense to use both at same time?
I try to generate this HTML code with Razor:
[Code]....
This is my Code in .cshtml, i have to select the "current" Style and insert <span> </span> tags wraping item.Text, but it doesnt work ....
[Code]....