asp.net mvc 3 - How to use Url.Content("~/asdf") inside automapper projection -


i trying use urlhelper's content method inside automapper projection, fails after first request.

my map creation code looks following:

protected override void initialize(requestcontext requestcontext) {   base.initialize(requestcontext);    mapper.createmap<myobject, mymappedobject>()     .formember(dest => dest.url, opt => opt.mapfrom(src => url.content("~/something/") + src.id)); } 

the first request works fine, subsequent requests throw nullreferenceexception following stack trace:

at system.web.httpservervarscollection.get(string name) @ system.web.mvc.urlrewriterhelper.wasthisrequestrewritten(httpcontextbase httpcontext) @ system.web.mvc.urlrewriterhelper.wasrequestrewritten(httpcontextbase httpcontext) @ system.web.mvc.pathhelpers.generateclienturlinternal(httpcontextbase httpcontext, string contentpath) @ system.web.mvc.pathhelpers.generateclienturlinternal(httpcontextbase httpcontext, string contentpath) @ system.web.mvc.pathhelpers.generateclienturl(httpcontextbase httpcontext, string contentpath) @ system.web.mvc.urlhelper.generatecontenturl(string contentpath, httpcontextbase httpcontext) @ system.web.mvc.urlhelper.content(string contentpath) 

the interesting part if cache url.content() part before mapping, things work fine:

protected override void initialize(requestcontext requestcontext) {   base.initialize(requestcontext);    var url = url.content("~/something/");   mapper.createmap<myobject, mymappedobject>()     .formember(dest => dest.url, opt => opt.mapfrom(src => url + src.id)); } 

btw code simplified, use case used part of json response, cannot move url.content() part view.

is automapper issue, mvc issue, or more i'm doing incorrectly? there cleaner solution other "caching" url part in variable before mapping code?

mapper.createmap<tsource, tdest>()

this should done once per app domain, in application_start method in global.asax. here redefine mapping rules everytime controller initialized not correct. great place use custom resolver.


Comments

Popular posts from this blog

apache - Add omitted ? to URLs -

redirect - bbPress Forum - rewrite to wwww.mysite prohibits login -

php - How can I stop spam on my custom forum/blog? -