Html - Generate Static Web Pages From A Template As Part Of Web Application Build?
Oct 13, 2010
I'm building an HTML5 application (with ASP.NET back-end) and i want to develop it in such a way that i can run it locally with all my resources (such js and css) not minified (so i can debug it easily). However when i build the final version i want merge and minify the resources. At the same time i want to create several versions of the app targeting different platforms (iPhone, iPad, desktop, etc) by adding appropriate css.
I thought that the final output should be a set of html files (so the get cached nicely). I could use ASPX and just control the output by a query string parameter, but i don't really want to have the form tag on my page.
So the questions are:
What are the pros and cons of using static html pages generated from a template versus a dynamic ASPX page? (apart from being able to run on any web server)
If ASPX approach good enough then how can i get rid of the form tag that's required by ASP.NET?
UDPATE
Another factor in favor of static html pages is the fact that the files are served instantly, whereas ASPX may take awhile to load if the app has recycled.
I have a few pages that are completely static. They only change at build time. But they are expensive to create. For the ones that are kind of expensive to create, I cache them for very long times using the ASP.NET output caching. But for one page, I really want it cached forever and ever or until the the next build.
What is the most expedient way to make this happen? Is there a build in feature that achieves this or a 3rd party tool?
(yeah, for the moment I plan to do the "view source" and copy paste thing, which isn't a very elegant build step)
My website is made up of .aspx pages.On some pages, an email gets programmatically sent, and I find it most convenient to have.html email templates (which I can edit in Visual Studio) which I load and manipulate programmatically, and then send as the body of an email. The html files are never displayed to users on the site.At the moment, I store these emails in an Email subdirectory of App_LocalResources, as this seemed like the logical place to put them.
But whenever I update an email on my IIS 6 server, then the IIS server shuts down and restarts, stating: Shutdown Message: Change Notification for critical directories. App_LocalResources dir change or directory rename HostingEnvironment initiated shutdown Change Notification for critical directories. App_LocalResources dir change or directory rename HostingEnvironment caused shutdown.
I don't want to restart my webserver every time (and lose session information) any time I change one of my email templates.
So where is the best suggested location for storing these .html files, as part of the project?
I need to build web application that will do:1 - build web pages. 1a - build template for page. 2 - add module(by module I mean ContacUs form, Search, Billing System...). Each module can be constructed by submodules or diveded to submodules 2a - build module(add form, textbox, button...) and that all entered data by user could be saved in dbCan you advise me a DB structure that will contain it allI looked some cms db, but it's NOT this. Please, don't ask why I mess with it. I just need to build it.
I had an ASP.NET 1.1 application that I converted to 2.0. I deployed the application under IIS 7 on Windows 2008 Server. I can browse images and static html pages but I can't browse .aspx pages. When I try to run any .aspx page, my browser says "Internet Explorer cannot display the webpage". My application pool is set to .NET framework 2.0 with Integraded in Managed Pipeline mode.
I have a question about C Sharp ASP.NET:Is there a difference (in code speed, resources) between:public static variable declared in public static class MyGlobals in a 'Code File' template;and the variable declared in a normal 'Class File' template;I use this variable in 2 different Class Files and also in _Default Page codebehind cs file.In fact in my case I need about 20 global variables of type List<string>.
I would like to generate a static URL based on a few parameters.The page serve the file for downloading is called CertificateDownload.aspx ,I am generating the download link in Report.aspx.These 2 files reside on the same physical folder.I do not like the replace method ,but I could not think of another way of doing it.How can I improve my code or what is a better way of doing it.
I need the absolute url to be displayed as text in the web browser.
Dim downLoadUrl As String = HttpContext.Current.Request.Url.ToString.Replace("Report.aspx", "CertificateDownload.aspx") + "?CertificateID=" + CertificateName HyperLinkDownloadLink.Visible = True HyperLinkDownloadLink.Text = downLoadUrl HyperLinkDownloadLink.NavigateUrl = downLoadUrl
I have a TFS build set up to deploy an ASP.net project to a test server.The build works great, and deploys to the test server fine, but instead of putting it into the Website directory that my IIS webserver is configured for, it puts the build into Website_20100511.6
Why is the date suffixed to the directory name? Is there a way to turn that off so I can publish directly to the Website?
I would like to generate a static URL based on a few parameters. The page serve the file for downloading is called CertificateDownload.aspx ,I am generating the download link in Report.aspx.These 2 files reside on the same physical folder.I do not like the replace method ,but I could not think of another way of doing it. How can I improve my code or what is a better way of doing it.
I need the absolute url to be displayed as text in the web browser.
I would like to generate my links automatically via a static class in each of my aspx pages (or in a common BasePage).Currently I use this:
private const string TEMPLATE = "~/One.aspx"; public static string Link () ( string link = String.Format(TEMPLATE); return link; )
But the name of my page, One.aspx is hardcoded. Is it possible to generate the path instead of this hardcoded constant TEMPLATE. You should know that I do not instantiate the class before creating the link.
In my web site in all html pages I call a function in body onLoad event:
<body onLoad="func1();">
This is part of my template for html, so it appears on every page in my site and I can't change that. Now, the deal is that on some pages, I need to call some other functions onload and I tried with window.onload property, but it wipes the calling of func1...
I now that I can just say:
window.onload = func2(); //where func2() calls to func1()
but this seems dirty and lame? Isn't it? So, is there a way to add some functions to those that are about to be executed onload, without deleting the old one?
In our current ASP.Net Webforms application we have several composite/template server controls that only exist for a common look and feel. For example, we have a panel control that has a title, a place for buttons related to the contents of the panel, and of course the contents. How is this best accomplished in MVC? RenderPartial doesn't get done what I need here. Should I still be using the same controls, but just on a view page? These controls don't really do anything on postback, they are only there for a common look and feel.
More Info:
We have a control in Webforms that implements ICompositeControl. We have a few properties on this control like Panel (type Panel), Buttons (again type Panel which would hold buttons) and a property Title of type string. Visually it looks like
do you think it would be difficult to write a framework where mvc compares last html it output to the current html we want to output, and instead of sending the entire html, figure out what has changed and generate js code that will do the updating as compared to previous html? (presuming nothing was manually changed on the client using js).
i want to write a page contain an datalist and several ObjectDataSource. The datalist will chose ObjectDataSource according to QuerryString passed to that page.
In Web Forms I would tend to do this by having one actual page. I would then use a tab container to give the appearance of several pages of a "wizard" by enabling and disabling tabs. Of course the URL wouldn't change, but otherwise it gave the impression I wanted. The values of the hidden controls were maintained in viewstate, and when the submit button on the last page was pressed I could obtain all the information I needed from the state of the controls.This obviously is not how it should be done with MVC. However, I don't really want session state or to write partially complete submissions to the database. What is the best way of handling this?
I'm looking for a good search component to plug in to an ASP.NET MVC 2 website. I've seen a few non-mvc ones before. Our website is comprised of 99% static mvc pages so I need something that will index and search the entire site (and not use database fulltext search).
I have two aspx pages that both use the same master page. Master page is more or less the default from VWD 2010 web application (Site.Master).
So both page A and B have the same:
[Code]....
The difference when shown in web browsers is (tested on Chrome and Firefox) that PageB looks like it has one more blank row/space on top of the page. How is this possible?
I am working on a web application using C# wherein my task is to display the userid of the logged in user on all of the html pages. I have kept track of the userid using session on the aspx page and it works perfctly fine on all of the user controls and aspx pages throught the application. I have checked the post back state and the session works well.
I have an HttpModule for handling errors up and running in the visual studio development environment. It works well. To the client, there are hard 404s and no apparent redirects. Google Analytics should be very happy with this.Debugging in Visual Studio 2008, when one navigates to localhost [port]/this page doesnt exist.html, I get a our 404 error page and the hard 404. It also works on the development server for localhost:[port]/this_page_doesnt_exist.aspx.When I port it all over to our IIS7 web server, I've got it working exactly as it should for the static html files. However, I've determined that my module isn't getting called at all for aspx files. If I turn customErrors Off, I get the standard ugly 404 page. (If customErrors is RemoteOnly, these do kick in.)The clues seem to be pointing at some IIS setting that I don't have properly tweaked, but I can't for the life of me find it. Any ideas?
firstly a static class only ever exists once and is not an instance. Any static members (ie static int NoOfPeople;) is stored in one place and is shared between all sessions (like the old global variables). Now static methods is where i'm not 100% sure. If I have a static method that doesn't use any other static members could this cause inconstant results, example (this is a fairly pointless method but just a quick example of the top of my head)
[Code]....
So in this example if two sessions (or threads) were to call this at the same time - would they both get back the expected results, because the method only uses private data (a, b and totalToReturn).Im sure this sounds a little simple but I will be using static methods to build user objects and various other objects that there will have to be a 100% garentee that the objects will not get mixed up between sessions and the wrong things return to the user.