Suppose I have index.cshtml
@{
ViewBag.Title = "Index";
}
@model SomeModel
@section JS{
content1
content2
content3
}
<div> View Content </div>
Is there any way I could have a controller action that would serve ONLY the section JS for a request for index.js?
Such that navigating to http://somesite/index.js would return
content1
content2
content3
Edit: Some further thoughts on this. My goal would be along the lines say creating a layout page that requires a JS section programmatically, and then composing the View to that layout page and then returning the results of this.
Psuedo code example:
var layout = new LayoutPage();
layout.DefineSection("JS", required: true);
layout.Compose(View("index"))
return layout;
I’m not set on achieving that with what I described but I feel that might offer some more insight on what I’d like to achieve.
You can do something like this (but you’d have to write your own controller action to do it properly)
Index.cshml
JSLayout:
Your controller Action
This will output only the
JSsection. If you want to do it programatically then it will take a bit.