KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm trying to make a declarative HTML Helper as specified in ScottGu's Razor post , but I'm not having much luck. I tried putting a Helpers.cshtml file with a DateTimeHelper in Views/Helpers but it wouldn't pick it up, so I tried in App_Code as per the MVC 3 Beta post . Now it picks it up, but when I try to use it in a file like so: @DateTimeHelper(DateTime.Now) The compiler complains that DateTimeHelper doesn't exist. Some weird things: If I rename the file to DateTime.cshtml, I get a different error, something about the particular code in my helper. For completeness' sake, here's the helper's code: @helper DateTimeHelper(DateTime t, bool longDate = true, bool showTime = true, bool longTime = true) { <time datetime='@t.ToUniversalTime()'> @if(longDate) { if(showTime) { if(longTime) { @t.ToLongDateString() @t.ToLongTimeString(); } else { @t.ToLongDateString() @t.ToShortTimeString(); } } else { @t.ToLongDateString() } } else { if(showTime) { if(longTime) { @t.ToShortDateString() @t.ToLongTimeString(); } else { @t.ToShortDateString() @t.ToShortTimeString(); } } else { @t.ToShortDateString() } } </time> } The helper is used in a certain view like this: @model dynamic <div> <p> The current time is @DateTimeHelper(DateTime.Now)</p> </div>
Tags (comma-separated)
Save Edits
Cancel