Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ASP.NET equivalent of server side includes

Although the classic ASP method of server-side includes works in ASP.NET, I get the impression it is not the preferred method. How am I "supposed" to be achieving the same effect?

This is how I'm doing it at the moment:
<!-- #include file ="functionlib.aspx" -->

like image 267
Scott Avatar asked May 21 '09 19:05

Scott


People also ask

Is ASP client-side or server-side?

There are several server-side technologies that can be used when developing web applications. The most popular is Microsoft's ASP.NET. In ASP.NET, server-side code uses the . NET Framework and is written in languages like C# and VB.NET.

What are server-side include files?

Server-side includes (SSI) are a mechanism for employing the web server to perform tasks like displaying files as part of other files or displaying information like the URL of web pages or dates and times dynamically.

Why ASP.NET is a server-side technology?

In the case of ASP.NET, the code in the page is read by the server and used to generate the HTML, JavaScript, and CSS, which is then sent to the browser. Since the processing of the ASP.NET code occurs on the server, it's called a server-side technology.

Is ASP.NET a server?

The ASP.NET Development Server is an alternative web server option for the development environment; it ships with and is integrated into Visual Studio.


1 Answers

You now have a number of options that provide this effect, but in a different manner.

  • User Controls (.ascx)
  • Master Pages (.master)
  • Server Side Controls (.dll)
  • Class Libraries (.dll)
  • App_Code Classes (.cs/.vb)

Each are used for differently to achieve different things. It depends what you're really trying to do. Given the name of your include file, I'd imagine you're trying to include library functions that will be used within the context of your page.

Consequently you'd write a class library that contains the methods and import them into your application/aspx.

If you're looking at templating a page that will do most of the layout work to provide a body for differing content then you'll be interested in Master Pages.

If you're looking at templating controls that can be used in many pages, then you're going to be after User Controls.

If you're looking at templating controls that can be used by many users across many projects, then you'll be looking at Server Side Controls.

If you're looking at a library of classes/methods then you'll develop a class library or use an app_code class which can be JIT compiled the first time it's called. This could at a stretch be considered more like classic ASP, but really it functions more like a class from a class library as a single unit. You can call it from within your codebehind or within <% %> tags in your aspx/ascx code without requiring a reference to a class library.

We don't really use "includes" per se any more, but each of these tools in your toolkit allow you to provide similar concepts for different scenarios. As a developer you will interact with the entire page lifecycle of your web pages differently. ASP.NET is a very different beast than classic ASP. It truly takes a different view/approach and will take some amount of patience to figure out the differences.

like image 61
BenAlabaster Avatar answered Oct 02 '22 17:10

BenAlabaster