当前位置:文档之家› ASP论文外文翻译---从底层了解ASPNET的结构

ASP论文外文翻译---从底层了解ASPNET的结构

ASP论文外文翻译---从底层了解ASPNET的结构
ASP论文外文翻译---从底层了解ASPNET的结构

原文1

A low-level Look at the https://www.doczj.com/doc/e96942496.html, Architecture

Abstract

https://www.doczj.com/doc/e96942496.html, is a powerful platform for building Web applications that provides a tremendous amount of flexibility and power for building just about any kind of Web application. Most people are familiar only with the high level frameworks like WebForms and WebServices which sit at the very top level of the https://www.doczj.com/doc/e96942496.html, hierarchy. In this article I’ll describe the lower level aspects of https://www.doczj.com/doc/e96942496.html, and explain how requests move from Web Server to the https://www.doczj.com/doc/e96942496.html, runtime and then through the https://www.doczj.com/doc/e96942496.html, Http Pipeline to process requests.

What is https://www.doczj.com/doc/e96942496.html,

Let’s start with a simple definition: What is https://www.doczj.com/doc/e96942496.html,? I like to define https://www.doczj.com/doc/e96942496.html, as follows: https://www.doczj.com/doc/e96942496.html, is a sophisticated engine using Managed Code for front to back processing of Web Requests.It's much more than just WebForms and Web Services…

https://www.doczj.com/doc/e96942496.html, is a request processing engine. It takes an incoming request and passes it through its internal pipeline to an end point where you as a developer can attach code to process that request. This engine is actually completely separated from HTTP or the Web Server. In fact, the HTTP Runtime is a component that you can host in your own applications outside of IIS or any server side application altogether. The runtime provides a complex yet very elegant mechanism for routing requests through this pipeline. There are a number of interrelated objects, most of which are extensible either via subclassing or through event interfaces at almost every level of the process, so the framework is hig hly extensible. Through this mechanism it’s possible to hook into very low level interfaces such as the caching, authentication and authorization. You can even filter content by pre or post processing requests or simply route incoming requests that match a specific signature directly to your code or another URL. There are a lot of different ways to accomplish the same thing, but all of the approaches are straightforward to implement, yet provide flexibility in finding the best match for performance and ease of development.

The entire https://www.doczj.com/doc/e96942496.html, engine was completely built in managed code and all of the extensibility functionality is provided via managed code extensions. This is a testament to the power of the .NET framework in its ability to build sophisticated and very performance oriented architectures. Above all though, the most impressive part of https://www.doczj.com/doc/e96942496.html, is the thoughtful design that makes the architecture easy to work with, yet provides hooks into just about any part of the request processing.

With https://www.doczj.com/doc/e96942496.html, you can perform tasks that previously were the domain of ISAPI extensions and filters on IIS –with some limitations, but it’s a lot closer than say ASP was. ISAPI is a low level Win32 style API that had a very meager interface and was very difficult to work for sophisticated applications. Since ISAPI is very low level it also is very fast, but fairly unmanageable for application level development. So, ISAPI has been mainly relegated for some time to providing bridge interfaces to other application or platf orms. But ISAPI isn’t dead by any means. In fact, https://www.doczj.com/doc/e96942496.html, on Microsoft platforms interfaces with IIS through an ISAPI extension that hosts .NET and through it the https://www.doczj.com/doc/e96942496.html, runtime. ISAPI provides the core interface from the Web Server and https://www.doczj.com/doc/e96942496.html, uses the unmanaged ISAPI code to retrieve input and send output back to the client. The content that ISAPI provides is available via common objects like HttpRequest and HttpResponse that expose the unmanaged data as managed objects with a nice and accessible interface.

The ISAPI Connection

ISAPI is a low level unmanged Win32 API. The interfaces defined by the ISAPI spec are very simplistic and optimized for performance. They are very low level –dealing with raw pointers and function pointer tables for callbacks - but they provide he lowest and most performance oriented interface that developers and tool vendors can use to hook into IIS. Because ISAPI is very low level it’s not well suited for building application level code, and ISAPI tends to be used primarily as a bridge interface to provide Application Server type functionality to higher level tools. For example, ASP and https://www.doczj.com/doc/e96942496.html, both are layered on top of ISAPI as is Cold Fusion, most Perl, PHP and JSP implementations running on IIS as well as many third party solutions such as my own Web Connection framework for Visual FoxPro. ISAPI is an excellent tool to provide the high performance plumbing interface to higher level applications, which can then abstract the information that ISAPI provides. In ASP and https://www.doczj.com/doc/e96942496.html,, the engines abstract the information provided by the ISAPI interface in the form of objects like Request and Response that read their content out of the ISAPI request information. Think of ISAPI as the plumbing. For https://www.doczj.com/doc/e96942496.html, the ISAPI dll is very lean and acts merely as a routing mechanism to pipe the inbound request into the https://www.doczj.com/doc/e96942496.html, runtime. All the heavy lifting and processing, and even the request thread management happens inside of the https://www.doczj.com/doc/e96942496.html, engine and your code.

As a protocol ISAPI supports both ISAPI extensions and ISAPI Filters. Extensions are a request handling interface and provide the logic to handle input and output with the Web Server –it’s essentially a transaction interface. ASP and https://www.doczj.com/doc/e96942496.html, are implemented as ISAPI extensions. ISAPI filters are hook interfaces that allow the ability to look at EVERY request that comes into IIS and to modify the content or change the behavior of functionalities like Authentication. Incidentally https://www.doczj.com/doc/e96942496.html, maps ISAPI-like functionality via two concepts: Http Handlers (extensions) and Http Modules (filters). We’ll look at these later in more detail.

ISAPI is the initial code point that marks the beginning of an https://www.doczj.com/doc/e96942496.html, request. https://www.doczj.com/doc/e96942496.html, maps various extensions to its ISAPI extension which lives in the .NET Framework directory:

本文摘自https://www.doczj.com/doc/e96942496.html,/presentations/howaspnetworks/howaspnetworks.asp

译文1

从底层了解https://www.doczj.com/doc/e96942496.html,的结构

·摘要

https://www.doczj.com/doc/e96942496.html,是一个用于构建Web程序的强大平台,提供了强大的柔性和能力以至于它可以构建任意的Web程序。许多人仅仅对处于https://www.doczj.com/doc/e96942496.html,高层次的框架如:WebForms和WebServices 比较熟悉,因此,在这篇文章里,我将会阐述有关https://www.doczj.com/doc/e96942496.html,比较底层的知识,并且将会解释,如何将请求从Web Server移交给https://www.doczj.com/doc/e96942496.html,运行时,然后通过https://www.doczj.com/doc/e96942496.html, HTTP管道处理这些请求。

1 https://www.doczj.com/doc/e96942496.html,是什么?

我们从最简单的定义开始,https://www.doczj.com/doc/e96942496.html,是什么?我通常喜欢用如下语句来描述https://www.doczj.com/doc/e96942496.html,。

https://www.doczj.com/doc/e96942496.html,是完全使用托管代码处理Web请求的一个成熟引擎平台。它不仅仅只是WebForms和WebServices。

https://www.doczj.com/doc/e96942496.html,是一个请求处理引擎。它获取客户端请求,然后通过它内置的管道,把请求传到一个终点,在这个终点,开发者可以添加处理这个请求的逻辑代码。实际上这个引擎和HTTP或者Web Server是完全分开的。事实上,HTTP运行时是一个组件,你可以把它宿主在IIS之外的应用程序上。甚至完全可以和其它的服务组合在一起。通过使用内置的管道路由请求,HTTP运行时提供了一套复杂的,但却很优雅的机制。在处理请求的每一个层面都牵涉到许多对象,但大多数对象都可以通过派生或者事件接口来扩展。所以,此框架具有非常高的可扩展性。通过这一套机制,可以进入较低层次的接口如:缓存,身份验证,授权等是有可能的。你可以在处理请求之前或之后过滤内容,或者仅仅把匹配指定签名的客户端请求直接路由到你的代码里或转向其它的URL。针对同一件事情,可以通过不同的处理方法完成,而且实现代码都非常的直观。除此之外,在容易开发和性能之间,HTTP运行时还提供了最佳的灵活性。

整个https://www.doczj.com/doc/e96942496.html,引擎完全构建在托管代码里,所有的扩展性功能都是通过托管代码的扩展提供。对于功能强大的.NET框架而言,使用自己的东西,构建一个成熟的、高性能的引擎体系结构已经成为一个遗嘱。尽管如此,但重要的是,https://www.doczj.com/doc/e96942496.html,给人印象最深的是高瞻远瞩的设计,这使得在其之上的工作变得非常容易,并且提供了几乎可以钩住请求处理当中任意部分的能力。

使用https://www.doczj.com/doc/e96942496.html,可以完成一些任务,之前这些任务是使用IIS上的ISAPI扩展和过滤来完成的。尽管还有一些限制,但与ASP相比,已经有了很大的进步。ISAPI是底层Win32样式的API,仅它的接口就有1兆,这对于大型的程序开发是非常困难的。由于ISAPI是底层的接口,因此它的速度也是非常的快。但对于企业级的程序开发是相当的难于管理的。所以,

在一定的时间内,ISAPI主要充当其它应用程序或平台的桥接口。但是无论如何,ISAPI没有被废弃。事实上,微软平台上的https://www.doczj.com/doc/e96942496.html,和IIS的接口是通过宿主在.NET里的ISAPI扩展来通信的,然后直达https://www.doczj.com/doc/e96942496.html,运行时。ISAPI提供了与Web Server通信的核心接口,然后https://www.doczj.com/doc/e96942496.html,使用非托管代码获取请求以及对客户端请求发出响应。ISAPI提供的内容经由公共对象类似于HttpRequest和HttpResponse,通过一个设计优良的、可访问的接口,以托管对象的方式暴露非托管数据。

2 从浏览器到https://www.doczj.com/doc/e96942496.html,

让我们从一个典型的https://www.doczj.com/doc/e96942496.html, Web请求的生命周期的起点开始。用户通过在浏览器中键入一个URL,点击一个超链接,提交一个HTML表单(一个post请求),或者一个客户端程序调用基于https://www.doczj.com/doc/e96942496.html,的WebService(通过https://www.doczj.com/doc/e96942496.html,提供服务)。在服务器端,IIS5或者IIS6将会收到这个请求。https://www.doczj.com/doc/e96942496.html,的底层通过ISAPI扩展与IIS通信,然后,通过https://www.doczj.com/doc/e96942496.html,,这个请求通常被路由到一个带有.aspx扩展名的页面。但是,这个处理过程如何工作,则完全依赖于HTTP处理器(handler)的执行。这个处理器将被安装用于处理指定的扩展。在IIS 中,.aspx经由“应用程序扩展”被映射到https://www.doczj.com/doc/e96942496.html, ISAPI的dll文件:aspnet_isapi.dll。每一个触发https://www.doczj.com/doc/e96942496.html,的请求,都必须经由一个已经注册的,并且指向aspnet_isapi.dll的扩展名来标识。

注:ISAPI是自定义Web请求处理中第一个并且具有最高性能的IIS入口点。

依靠扩展名,https://www.doczj.com/doc/e96942496.html,把一个请求路由到一个恰当的处理器,该处理器则负责处理这个请求。举个例子,WebServices的扩展名.asmx不会把一个请求路由到磁盘上的某一个页面,而是会路由到在定义中附加了指定特性(WebMethodAttribute)的类,此特性会把它标识成一个Web Services的实现。许多其它的处理器将随着https://www.doczj.com/doc/e96942496.html,一起被安装。当然也可以定义你自己的处理器。在IIS里所有的HttpHandler被映射并指向https://www.doczj.com/doc/e96942496.html, ISAPI扩展,并且这些HttpHandler也都在web.config里配置,用于把请求路由到指定的HTTP处理器里执行。每一个处理器都是一个.NET类,用于处理指定的扩展。而这些处理器可以处理简单到只有几行代码的Hello World,也可以处理复杂到类似https://www.doczj.com/doc/e96942496.html,的页面以及执行WebService。就目前而言,仅仅需要理解扩展就是一种基本的映射机制,https://www.doczj.com/doc/e96942496.html,用它可以从ISAPI里获取一个请求,然后把请求路由到指定处理该请求的处理器中。

原文2

Thirteen https://www.doczj.com/doc/e96942496.html, MVC extensibility points

you have to know

Abstract

One of the main design principles https://www.doczj.com/doc/e96942496.html, MVC has been designed with is extensibility. Everything (or most of) in the processing pipeline is replaceable so, if you don’t like the conventions (or lack of them) that https://www.doczj.com/doc/e96942496.html, MVC uses, you can create your own services to support your conventions and inject them into the main pipeline.

In this post I’m goi ng to show 13 extensibility points that every https://www.doczj.com/doc/e96942496.html, MVC developer should know, starting from the beginning of the pipeline and going forward till the rendering of the view.

1. RouteConstraint

Usually you could put some constrains on url parameters using regular expressions, but if your constrains depend on something that is not only about the single parameter, you can implement the IRouteConstrains’s method and put your validation logic in it.

One example of this is the validation of a date: imagine an url that has year, month and date on different url tokens, and you want to be able to validate that the three parts make a valid date.

·2. RouteHandler

Not really specific to https://www.doczj.com/doc/e96942496.html, MVC, the RouteHandler is the component that decide what to do after the route has been selected. Obviously if you change the RouteHandler you end up handling the request without https://www.doczj.com/doc/e96942496.html, MVC, but this can be useful if you want to handle a route directly with some specific HttpHanlders or even with a classic WebForm.

3. ControllerFactory

The controller factory is the component that, based on the route, chooses which controller to instantiate and instantiate it. The default factory looks for anything that implements IController

and whose name ends with Controller, and than create an instance of it through reflection, using the parameter-less constructor.

But if you want to use Dependency Injection you cannot use it, and you have to use a IoC aware controller factory: there are already controller factory for most of the IoC containers. You can find them in MvcContrib or having a look at the Ninject Controller Factory.

4. ActionInvoker

ActionInvoker is responsible for invoking the action based on it’s name. The default action invoker looks for the action based on the method name, the action name and possibly other selector attributes. Then it invokes the action method together with any filter defined and finally it executes the action result.

If you read carefully you probably understood that most of the execution pipeline is inside the logic of the default ControllerActionInvoker class. So if you want to change any of these conventions, from the action method’s selection logic, to the way http parameters are mapped to action parameters, to the way filters are chosen and executed, you have to extend that class and override the method you want to change.

A good example of this, is the NinjectActionInvoker I developed to allow injection of dependencies inside filters.

5. ActionMethodSelectorAttribute

Actions, with the default action invoker, are selected based on their name, but you can finer tune the selection of actions implementing your own Method Selector. The framework already comes with the AcceptVerbs attribute that allows you to specify to which HTTP Verb an action has to respond to.

A possible scenario for a custom selector attribute is if you want to choose one action or another based on languages supported by the browser or based on the type of browser, for example whether it is a mobile browser or a desktop browser.

6. AuthorizationFilter

These kind of filters are executed before the action is executed, and their role is to make sure the request is “valid”.

There are already a few Authorization filters inside the framework, the most “famous” of which is the Authorize attribute that checks whether the current user is allowed to execute the action. Another is the the ValidateAntiForgeryToken that prevents CSRF attacks. If you want to implement your own authorization schema, the interface you have to implement is IAuthorizationFilter. An example could be the hour of the day.

7. ActionFilter

Action Filters are executed before and after an action is executed. One of the core filters is the OutputCache filter, but you can find many other usages for this filter. This is the most likely exte nsion point you are going to use, as, IMHO, it’s critical to a good componentization of views: the controller only has to do its main stuff, and all the other data needed by the view must be retrieved from inside action filters.

8. ModelBinder

The default model binder maps HTTP parameters to action method parameters using their names: a http parameter named user.address.city will be mapped to the City property of the Address object that itself is a property of the method parameter named user. The DefaultModelBinder works also with arrays, and other list types.

But it can be pushed even further: for example you might use it to convert the id of the person directly to the Person object looking up on the database. This approach is explained better in the following post Timothy Khouri (aka SingingEels): Model Binders in https://www.doczj.com/doc/e96942496.html, MVC. The code is based on the preview 5, but the concept remains the same.

·9. ControllerBase

All controllers inherit from the base class Controller. A good way to encapsulate logic or conventions inside your actions is to create you own layer supertype and have all your controllers to inherit from it.

·10. ResultFilter

Like the ActionFiters, the ResultFilters are execute before and after the ActionResult is executed. Again, the OutputCache filter is an example of a ResultFilter. The usual example that is done to explain this filter is logging. If you want to log that a page has been returned to the user, you can write a custom RenderFilter that logs after the ActionResult has been executed.

·11. ActionResult

https://www.doczj.com/doc/e96942496.html, MVC comes with many different kind of results to render views, to render JSON, plain text, files and to redirect to other actions. But if you need some different kind of result you can write your own ActionResult and implement the ExecuteResult method. For example, if you want to send a PDF file as result you could write your own ActionResult that use a PDF library to generate the PDF. Another possible scenario is the RSS feed: read more about how to write a RssResult in this post.

Look at implementing a custom action result when the only peculiarity is how the result is returned to the user.

·12. ViewEngine

Probably you are not going to write your own view engine, but there are a few that you might consider using instead of the default WebForm view engine. The most interesting one, IMHO, is Spark.

But if you really want to write your own view engine, have a look at this post by Brad Wilson: Partial Rendering & View Engines in https://www.doczj.com/doc/e96942496.html, MVC.

·13. HtmlHelper

Views must be very dumb and thin, and they should only have html markup and calls to HtmlHelpers. There should be no code inside the views, so helpers come very handy for extracting the code from the view and putting it into something that is testable. As Rob Conery says: “If there's an IF, make a Helper”.

What is an HtmlHelper? Basically it’s just an extension method of the HtmlHelper class, but that’s the only requirement.

本文摘自https://www.doczj.com/doc/e96942496.html,/

译文2

https://www.doczj.com/doc/e96942496.html, MVC中你必须知道的13个扩展点

摘要

https://www.doczj.com/doc/e96942496.html, MVC设计的主要原则之一是可扩展性。处理管线(processing pipeline)上的所有(或大多数)东西都是可替换的。因此,如果您不喜欢https://www.doczj.com/doc/e96942496.html, MVC所使用的约定(或缺乏某些约定),您可以创建自己的服务来支持您的约定,并将其注入到主管线中。

在本文中,我们将从管线开始直到视图呈现,逐一向您展示每个https://www.doczj.com/doc/e96942496.html, MVC开发者都必须了解13个扩展点。

1.RouteConstraint

通常情况下你可以使用正则表达式对url参数进行约束,但如果您的约束不仅仅取决于单一参数,您可以实现IRouteConstrains的方法,并在其中添加你的验证逻辑。

比如对日期的验证,url中可能会包含年、月、日,而你需要验证这三者是否可以组合成一个有效的日期。

2.RouteHandler

RouteHandler是在路由选择之后进行处理的组件,它并不仅仅针对https://www.doczj.com/doc/e96942496.html, MVC。显然,如果您改变了RouteHandler,那么对请求的处理将不再使用https://www.doczj.com/doc/e96942496.html, MVC,但这在您使用其他HttpHandler或经典的WebForm进行路由处理时却是非常有用的。

3.ControllerFactory

ControllerFactory是基于路由的组件,它选择正确的controller并对其实例化。default factory会查找实现了IController并且以Controller结尾的类,然后通过反射使用无参构造函数进行实例化。

但如果您希望使用依赖注入,就不能再使用default factory,而必须使用支持IoC的controller factory。MvcContrib和Ninject Controller Factory都包含支持IoC容器的controller factory。

4.ActionInvoker

ActionInvoker顾名思义是负责调用(invoke)action的。默认的action invoker通过方法名、action名或其他可能的selector attribute来查找action,然后调用action 方法以及定义的filter,最终执行得到action result。

你会发现大部分执行管线存在于ControllerActionInvoker类的逻辑之中。因此,如果希望改变这些约定,如action方法的选择逻辑、http参数映射到action参数的方式、选择和执行filter的方式等,您需要扩展该类并重写需要修改的方法。

可以参阅NinjectActionInvoker I developed to allow injection of dependencies inside filters。

5.ActionMethodSelectorAttribute

使用默认的action invoker时,action的选择是基于名称的。您也可以实现自己的Method Selector以改善对于action的选择。在框架中已经包含了AcceptVerbs特性,它允许您指定使用哪一个HTTP Verb来处理action的响应。

例如,您也许会希望基于浏览器所支持的语言或浏览器类型(如移动设备的浏览器或桌面浏览器)来进行action的选取。

6.AuthorizationFilter

这种过滤器是在action执行之前执行的,用来确保请求是有效的。

框架中已经包含了一些autorization过滤器,最有名的莫过于Authorize特性,它用来检查当前用户是否允许执行该action。另一个是用来阻止CSRF攻击的ValidateAntiForgeryToken。如果您希望实现自己的authorization,那么必须实现接口。例如,日期中的小时。

7.ActionFilter

Action Filters在action执行前后执行。OutputCache过滤器是几个核心过滤器之一。这可能是您最有可能使用的扩展点,并且在我看来,controller只关心它的主要工作,而view所需要的所有其他数据都必须从action过滤器内部获取,这样的实现对于一个组织良好的view来说,是十分关键的。

8.ModelBinder

默认的model binder使用参数名称进行HTTP参数到action方法参数的映射。例如,http参数user.address.city将映射到方法参数user的Address属性的City属性。DefaultModelBinder也同样适用于数组和其他列表类型。

更进一步来说,例如,您可能希望从数据库中进行检索,直接根据person的id将其转换为Person对象。Timothy Khouri(网名SingingEels)在他的文章Model Binders in https://www.doczj.com/doc/e96942496.html, MVC中更好的阐述了这种方法。他的代码基于Preview 5,但其理念是一样的。

9.ControllerBase

所有的Controller均继承自基类Controller。要想在action中封装自己的逻辑和约定,创建自己的父类使所有Controller继承自该类,是一种很好的方式。

10.ResultFilter

与ActionFilter类似,ResultFilters在ActionResult前后执行。OutputCache过滤器也可以作为ResultFilter的示例。另外,比较常用的诠释这种过滤器的示例是日志记录。如果您希望在页面返回给用户时记录日志,可以编写自定义的RenderFilter,在ActionResult执行之后记录日志。

11.ActionResult

https://www.doczj.com/doc/e96942496.html, MVC提供了很多result用来呈现视图、JSON、纯文本、文件并重定向到其他action。如果您需要其他类型的result,可以自定义ActionResult,并实现ExecuteResult 方法。例如,如果您希望将PDF文件作为结果发送,您需要使用PDF库编写能够生成PDF

的ActionResult。又如RSS feed,可参见how to write a RssResult in this post。12.ViewEngine

您可能不需要编写自己的view engine,但您也许可以考虑使用其他引擎来替代默认的WebForm view engine。在我看来,最有趣的引擎就是Spark。

如果您确实希望编写自己的view engine,可以看一下Brad Wilson的文章: Partial Rendering & View Engines in https://www.doczj.com/doc/e96942496.html, MVC。

13.HtmlHelper

视图必须十分简单整洁,它们只能包含html标记并调用HtmlHelper的辅助方法。视图中不能包含任何代码,所以辅助方法必须十分方便,使您可以将代码从视图中提取出来,放到一个可测试的环境中去。正如Rob Conery所说:如果有if,就构造辅助方法(If there's an IF, make a Helper)。

什么是HtmlHelper辅助方法?其实就是HtmlHelper类的扩展方法,这是唯一的要求。

你可以从Rob的文章Avoiding Tag Soup中了解到为什么说HtmlHelper是封装视图中代码的好方法

计算机专业ASPNET外文翻译

Extreme https://www.doczj.com/doc/e96942496.html, 1.1Web Deployment Projects When ASP was first released, Web programming was more difficult because you needed IIS to serve your ASP pages. Later, https://www.doczj.com/doc/e96942496.html, 2.0 and Visual Studio? 2005 made everything easier by introducing the Web site model of development. Instead of creating a new project inside Visual Studio, the Web site model lets you point to a directory and start writing pages and code. Furthermore, you can quickly test your site with the built-in https://www.doczj.com/doc/e96942496.html, Development Server, which hosts https://www.doczj.com/doc/e96942496.html, in a local process and obviates the need to install IIS to begin developing. The beauty of the Web site model is that you can develop your Web application without thinking about packaging and deployment. Need another class? Add a .cs file to the App_Code directory and start writing. Want to store localizable strings in a resource file? Add a .resx file to the App_GlobalResources directory and type in the strings. Everything just works; you don't have to think about the compilation and deployment aspect at all. When you are ready to deploy, you have several options. The simplest choice is to copy your files to a live server and let everything be compiled on-demand (as it was in your test environment). The second option is to use the aspnet_compiler.exe utility and precompile the application into a binary release, which leaves you nothing but a collection of assemblies, static content, and configuration files to push to the server. The third option is to again use aspnet_compiler.exe, but to create an updateable binary deployment where your .as*x files remain intact (and modifiable) and all of your code files are compiled into binary assemblies. This seems to cover every possible scenario, leaving the developer to focus simply on writing the Web application, with packaging and deployment decisions to be made later when the application is actually deployed. There was a fair amount of backlash against this model, however, especially from developers who were used to their Web projects being real projects, specified in real project files, that let you inject pre-and post-build functions, exclude files from the build process, move between debug and release builds with a command-line switch, and so on. In response, Microsoft quickly introduced the Web Application Project or WAP, initially released as an add-in to Visual Studio 2005, and now included in Visual Studio 2005 Service available for download from https://www.doczj.com/doc/e96942496.html,/vstudio/support/vs2005sp1. WAP provides an alternative to the Web site model that is much closer to the Visual Studio .NET 2005 Web Project model. The new WAP model compiles all of the source code files during the build process and generates a single assembly in the local /bin directory for deployment. WAP also makes it much easier to incrementally adopt the new partial class codebehind model

计算机专业毕业论文完整版

摘要 随着信息技术的高速发展,21世纪是数字信息时代,互联网正以前所未有的冲击力影响着人类的生活。它的出现和发展,同样也为学校的发展提供了丰富的资源。正是在这样的趋势下,大部分的学校都建立了自己的,通过来发布消息,共享资源,为学校和学生提供一个相互交流的平台,增强学校和学生之间的联系。 本文主要讲述了如何利用DREAMWEAVER和ACCESS数据库进行学校设计的开发过程,详细给出了从学校的需求分析到总体设计、详细设计与实现及测试的各个环节,最后对本做出了客观评价,指出了本的不足之处,并给出今后的完善方向,基本上完成了一个所要求的容,包括前台展示和后台管理。整个包括首页模块、留言板模块、后台模块。通过本次的开发,使我明白在进行的设计与维护的时候应该要从整体上把握全局,对设计有了一定的了解。 关键词:ASP;ACCESS数据库;学校网络;管理 Abstract With the rapid development of information technology, the 21st century is the digital information age, Internet is an unprecedented impact affects human life. Its emergence and development, but also for the development of enterprises provides a rich resource. It is in such a trend, the majority of enterprises have set up their own website, through the website to publish news, Gongxiangziyuan for enterprises and Ke Hu provide a mutual exchange of the platform, enhance business and customer. This article describes how to conduct business using DREAMWEAVER and ASP web design development process, from the corporate website gives detailed system analysis to design, detailed design and implementation and testing of all aspects of the system made the final objective of this evaluation, that the shortcomings of this system, and gives direction for the future perfect, basically completed the required content of a site, including the front display and back office management. The entire system including the Home module, message board module, the background module. Through the development of the site, so that we understand that when the system should do from the whole to grasp the overall situation, of design web site has some understanding. Key words: ASP;ACCESS;DREAMWEAVER;HTML;Website design

基于Java网上购物商城毕业论文

本科毕业论文(设计) 题目:基于JSP购物的设计与开发 学院:数学与计算机科学学院 班级: 08级计算机本科三班 :峰 指导教师:吕秉东职称:讲师 完成日期: 2012 年 6 月 2 日

基于JSP购物的设计与开发 摘要:随着网络化和信息化的发展,人们生活水平的不断提高,互联网已逐步深入人心,人们不再满足于传统的购物方式,“网上购物”这种新型的购物方式已经为更多的人所接受,越来越多的网络商店走入了大众的生活,对电子商务的设计和实现技术要求也越来越高,网上手机销售也成为商家新的运作模式。本主要以MySQL为数据库开发平台,采用JSP开发技术实现前台用户页面和后台管理员管理页面。此系统的开发改善了一些技术和增加创新,使之代替了传统的销售方式,解决了管理困难、销售成本高等问题。同时此系统具有使用简单,用户界面友好,便于操作等特点。 关键词:JSP;MySQL;手机商城

目录 1 绪论 (1) 1.1的开发背景 (1) 1.2系统开发工具概述 (2) 1.2.1 JSP简介 (2) 1.2.2 JSP的优点 (2) 1.2.3 JSP的弱势 (2) 1.2.4 MyEclipse简介 (2) 1.2.5 MySql简介 (3) 1.2.6 Tomcat简介 (3) 1.2.7 系统开发环境 (3) 2 需求分析 (4) 2.1功能需求分析 (4) 2.2业务流程分析 (4) 2.3数据流分析 (4) 3 系统设计 (7) 3.1系统总体功能结构 (7) 3.2系统数据库模型设计 (8) 3.2.1系统概念结构设计——E-R图 (8) 3.2.2 系统逻辑结构设计——关系模型 (10) 3.2.3 数据库逻辑结构设计——关系表 (10) 3.2.4 数据表详细说明 (10) 4 详细设计与系统实现 (12) 4.1系统详细设计总体概述 (12) 4.2数据库的操作的J AVA B EAN设计 (13)

ASPNET毕业设计外文翻译3

毕业设计(论文)外文资料翻译 学院 专业 学生姓名 班级学号 外文出处 附件:1.外文资料翻译译文;2.外文原文 指导教师评价: 1.翻译内容与课题的结合度:□优□良□中□差2.翻译内容的准确、流畅:□优□良□中□差3.专业词汇翻译的准确性:□优□良□中□差4.翻译字符数是否符合规定要求:□符合□不符合 指导教师签名: 年月日

附件1:外文资料翻译译文 非常https://www.doczj.com/doc/e96942496.html, 1.1Web 部署项目 当ASP 第一次发布时,Web 编程还比较困难,因为需要 IIS 来处理 ASP 页。后来,https://www.doczj.com/doc/e96942496.html, 2.0 和 Visual Studio? 2005 通过引入网站开发模型使一切工作都变得容易了。借助该网站模型,您不必在 Visual Studio 中创建新项目,而是可以指向一个目录并开始编写网页和代码。此外,您还可以使用内置的 https://www.doczj.com/doc/e96942496.html, Development Server 快速测试站点,https://www.doczj.com/doc/e96942496.html, Development Server 将 https://www.doczj.com/doc/e96942496.html, 寄宿在一个本地进程中,并消除了必须安装 IIS 才能进行开发这一先决条件。该网站模型的魅力在于您在开发 Web 应用程序时无需考虑打包和部署。需要其他类时怎么办?向 App_Code 目录添加一个 .cs 文件即可开始编写。希望将可本地化的字符串存储在资源文件中时怎么办?向 App_GlobalResources 目录添加一个 .resx 文件并键入字符串。一切都顺顺当当;您根本就不必考虑编译和部署方面的事情。 在准备进行部署时,您有多种可选方案。最简单的方案是将文件复制到主运行服务器并按要求编译每一个文件(和在测试环境中一样)。第二种方案是使用 aspnet_compiler.exe 实用工具将应用程序预编译为二进制版本,之后将只剩下要放到服务器上的一组程序集、静态内容和配置文件。第三种方案也使用 aspnet_compiler.exe,但要创建一个可更新的二进制部署,其中 .as*x 文件保持不变(并且可修改),而所有代码文件都编译为二进制程序集。 这似乎涵盖了每一种可能的情况,开发人员可以一心一意地编写 Web 应用程序,而在以后实际部署时再作打包和部署决定。不过,此模型也遭到了相当大的反对,特别是那些习惯了自己开发的 Web 项目是在实际项目文件中指定的实际项目的开发人员的反对,这些项目允许注入生成前和生成后函数、从生成过程排除文件以及使用命令行开关在调试和发布版本之间进行切换等操作。有鉴于此,Microsoft 迅速推出了 Web 应用程序项目(即 WAP),最初它是作为 Visual Studio 2005 的插件发布的,现在包含在 Visual Studio 2005 Service Pack 1 (SP1) 中,Visual Studio 2005 Service Pack 1 (SP1) 可从https://www.doczj.com/doc/e96942496.html,/vstudio/support/vs2005sp1 下载。 WAP 可替代与 Visual Studio .NET 2005 Web 项目模型非常接近的网站模型。新的WAP 模型会在生成过程中编译所有源代码文件,并在本地的 /bin 目录中生成一个用于部署的程序集。WAP 还使得增量采用 https://www.doczj.com/doc/e96942496.html, 2.0 引入的新的分部类代码隐藏模型变得更

计算机专业本科毕业论文

东北师大学 本科生毕业论文(设计)题目:学生成绩管理系统设计与实现 学号:001 姓名:燕 年级:1003 学院:省仁寿县教师进修学校奥鹏学习中心[24]A 专业:计算机科学与技术 完成日期:

指导教师: 摘要 本系统全称为学生成绩管理系统设计与实现。根据开发要求,它主要应用于教育系统,完成对日常的教学、教务、教师以及学生的计算机化的管理。开发学生成绩管理系统可使学院教职员工减轻工作压力,比较系统地对教务、教学上的各项服务和信息进行管理,同时,可以减少劳动力的使用,加快查询速度、加强管理,以及国家各部门关于信息化的步伐,使各项管理更加规化。目前,学校工作繁杂、资料重多。目前,管理信息系统已进入高校,但还未普及,而对于学生成绩管理来说,目前还没有一套完整的、统一的系统。因此,开发一套适和大众的、兼容性好的系统是很有必要的。 系统管理容广泛,全面涉及了教务教学上的各项服务,包括学生成绩管理,其中有学生成绩管理;学生管理等等。在开发过程中,注意使其符合操作的业务流程,并力求系统的全面性、通用性,使得本系统不只适用于一家教育机构。在开发方法的选择上,选择了生命周期法与原型法相结合的方法,遵循系统调查研究、系统分析、系统设计和系统实施四个主要阶段进行设计,而在具体的设计上,采取了演化式原型法,随着用户的使用及对系统了解的不断加深,对某一部分或几部分进行重新分析、设计、实施。在开发工具的选择上,主要利用Delphi7.0 编程语言进行开发,使用其自带的数据库,从而保证了数据的完整性与一致性。本论文主要从系统分析、系统设计、系统实施与使用等几个方面进行介绍。 【关键词】信息管理系统信息化成绩管理数据库Delphi7.0

外文文献—从经典ASP到ASPNET

附录Ⅰ英文文献翻译 Moving from Classic ASP to https://www.doczj.com/doc/e96942496.html, ABSTRACT https://www.doczj.com/doc/e96942496.html, is Microsoft new offering for Web application development, innovation within https://www.doczj.com/doc/e96942496.html, have resulted in significant industry popularity for this product. Consequently there is an increased need for https://www.doczj.com/doc/e96942496.html, education. The Web Application Development is a third year undergraduate course. To meet the demands of both industry and students, we have changed the focus of this course from Classic ASP to https://www.doczj.com/doc/e96942496.html,. This paper reports this move. The significant features of https://www.doczj.com/doc/e96942496.html, and the motivations for this move are discussed. The process, the problems encountered, and some helpful online learning resources are described. Key words: Web Application Development, Classic ASP, https://www.doczj.com/doc/e96942496.html,, Move, https://www.doczj.com/doc/e96942496.html, 1. INTRODUCTION https://www.doczj.com/doc/e96942496.html, is not just a new version of ASP. It provides innovation for moving Windows applications to Web applications. Web services and the .NET framework have made the vision of the Web as the next generation computing platform a reality. With server controls, Web forms and “code-behind”, we can develop a Web application by using a complete object-oriented programming (OOP) model. This increases the popularity of https://www.doczj.com/doc/e96942496.html, in industry. The industry project is the final course of the Bachelor of Computing Systems (BCS) degree at UNITEC, in which students undertake a real-world project. We have observed a rapid growth of https://www.doczj.com/doc/e96942496.html, related industry projects in our school. The Web Application Development (WAD) paper is a third year undergraduate course. It was originally offered using ASP 2.0 and ColdFusion. To meet the demands from both industry and students, we have changed the course content to cover https://www.doczj.com/doc/e96942496.html,, Visual https://www.doczj.com/doc/e96942496.html, (https://www.doczj.com/doc/e96942496.html,) and ColdFusion. This change commenced with the first semester of 2003. This paper will examine the features of https://www.doczj.com/doc/e96942496.html, and explain why these are unique. The motivations for moving to https://www.doczj.com/doc/e96942496.html, are discussed by analyzing the current situation of https://www.doczj.com/doc/e96942496.html, related to industry projects in our school, analyzing the results of short surveys on students, and

计算机专业本科毕业论文

摘要 21世纪,高新技术的超速发展和全球化的市场经济导致企业之间的竞争空前激烈,这种竞争归根结底是人才的竞争,谁能有效地管理和开发人力资源,谁就能掌握知识经济时代的生产力。 本文基于 Web的人力资源管理系统的实现进行了研究。首先阐述了人力资源管理的重要地位、基本思想、发展趋势、新时期的一些主要特点等理论知识,分析了建立了基 于Web的人力资源管理系统的必要性和可行性,然后对人力资源管理系统进行了需求分析和系统设计,探讨了人力资源管理系统的开发方法和实现技术。 论文给出了基于 Web的招聘管理系统开发实例。该实例实现了招聘管理的一些主要 功能。主要包括招聘岗位管理、人才库管理、应聘简历管理等模块。不仅能代替日常招 聘管理中一些的繁琐的工作,而且能充分利用 Internet/Intranet 快速地收集和发布信息,给基于Web的人力资源管理系统的开发提供了一个好的思路。关键词:,人力资源管理系统

Abstract In the 21st century,new and advanced technology develop over the speed limit and market economy is globalizing, which cause the competition among enterprises unprecedentedly fierce,the competition is the talents ’oneafter all,who can manage and develop the human resources effectively,who can grasp the productivity of the knowledge driven economical aera. The paper studies the realization of Web-based HRMS.Firstly explains some theory knowledge on HRM,such as its concept,development course,main role,some main characteristics of new period,and the influence that some new technologies such as Internet/Intranet bring to HRMS.And carries on demand analysis and system designs on HRMS.Probes into the development approach and realizing technology of the HTMS. The paper provides the Web-based recruitment administrative system instance,it realize some main functions of recruiting management module.Mainly include applying recruiting management posts,pool of management,managementcandidates curriculum vitae ,etc.It not only can replace some daily recruit management tedious jobs but also can fully utilize Internet/Intranet to collect and issue information fast.The instance gives a good way to develop Web-Based HRMS. Key Words: Web,Human Resource Management

网上商城系统毕业论文 商城毕业论文

网上商城系统毕业论文商城毕业论文 商城毕业论文(1):摘要:目前, 在生活实际中, 依托其他网购平台的儿童体育用品卖方所提供的商品质量与材质都难以保障, 即便各大平台加大了打假力度, 但是依然存在隐患。笔者建立儿童体育用品网上商城, 分别对网上商城购物体系功能进行分类处理、分析归纳用户示例, 详细介绍儿童体育用品网上商城的设计方案。笔者介绍了商城体系各模块主要功能、管理人员操作流程, 建立一个完整的、系统化的管理系统、会员登录系统, 希望能够满足现代社会中消费者对儿童体育用品的网络采购需求。 关键词:网上商城; JSP; MySQL; B/S结构; 随着社会经济的不断发展, 民众物质生活不断改善。尤其是在这个网络化、信息化的时代, 网络技术已渗透到社会领域、经济领域等各行各业。越来越多的人开始在网上购物, 这也为网上商城带来商机、为企业带来市场。目前, 企业销售也不再局限于实体营运的简单方式, 更加注重网上商城销售的能力。但现今网络上几乎没有单独针对于儿童体育用品的购物商城, 大多数都是依托京东、天猫、淘宝等购物平台的个人或企业商家。在此背景下, 本文将以JSP、My SQL为技术指导, 开发出一个基于Web的专门针对儿童的体育用品网上商城。 1 系统功能设计 对于网上商城系统功能, 分为系统要求、购物车管理、订单信息管理、系统管理模块等[1]。系统功能模块:对不同种类商品进行归类、实时展示最新产品与降价产品等不同产品;购物车管理模块:随时提醒客户购物车所买产品;在会员信息管理方面:严格保密客户个人资料;系统管理模块:用户登录系统演示、用户账号密码修改、用户登录平台权限设置、用户购买商品后评价管理等;订单信息管理模块:客户及时下单后订单产生、客户订单信息修改、客户付款、系统及时提醒管理人员发货、客户购买产品信息整理等。具体分析如下。 1.1 商品管理 随着网上购物系统的不断优化, 网上管理人员可随时对网上产品进行分类、推荐、展示等处理。同时, 通过系统中的商品管理模块, 系统管理员可随时了解商品最新发布信息, 并可得到发布产品的详细信息等。 1.2 会员管理 在会员管理模块, 系统设置了相应管理员权限, 可随时实现平台会员信息添加与修改、对应会员等级设置、会员注册与注销登记[2]。通过对平台系统的不断完善, 平台会员可24小时随时登录系统平台选购商品。 1.3 购物车管理 会员可随时将心仪产品加入购物车, 并随时修改所买商品数量, 在会员确定所需商品时, 实现订单生成与结账等。 1.4 订单管理 为更加便捷、科学地管理网上商城订单, 在订单系统模块分别对会员订购商品信息、订单发货信息、订单日期、商品退货、退款等进行等级处理, 并及时通知管理人员解决问题。目前, 商品系统管理功能主要集中在产品下单、产品发货、产品出货、产品退货等几个方面。 商品订购:对于购物车中的产品, 系统可进行对商品信息、会员购买信息、会员基本资料进行统计;订单撤销:在会员对产品产生疑问时, 可对购物车产品进行删除处理;付款订单发货:及时对会员订单进行处理, 快速准备发货;订单数据统计:及时了解、统计商城售出产品信息。

C#外文翻译

C# Programming for the Beginner Welcome to C# and the world of Windows, Internet and World-Wide-Web programming with Visual Studio and the .NET platform! This book is the second in our new .NET How to Program series, which presents various leading-edge computing technologies in the con- text of the .NET platform. C# is the next phase in the evolution of C and C++ and was developed expressly forMicrosoft’s .NET platform. C# provides the featu res that are most important to program-mers,suchasobject-orientedprogramming,strings,graphics,graphical-user-inte rface(GUI) components, exception handling, multithreading, multimedia (audio, images, ani-mation and video), file processing, prepackaged data structures, database processing,Internet and World-Wide-Web-based client/server networking and distributed computing.The language is appropriate for implementing Internet- and World-Wide-Web-based appli-cations that seamlessly integrate with PC-based applications. The .NET platform offers powerful capabilities for software development and deploy-ment, including independence from a specific language or platform. Rather than requiringdevelopers to learn a new programming language, programmers can contribute to the samesoftware project, but write code using any (or several) of the .NET languages (such as C#,Visual Basic .NET, Visual C++ .NET and others) with which they are most competent. Inaddition to providing language independence, .NET extends program portability byenabling .NET applications to reside on, and communicate across, multiple platforms—thus facilitating the delivery of Web services over the Internet. The .NET platform enablesWeb-based applications to be distributed to consumer-electronic devices, such as cellPrefaceXXXIXphones and personal digital assistants, as well as to desktop computers. The capabilities thatMicrosoft has incorporated into the .NET platform create a new software-development par-adigm that will increase

大专计算机专业毕业论文

大专计算机专业毕业论 文 公司内部编号:(GOOD-TMMT-MMUT-UUPTY-UUYY-DTTI-

大专计算机专业毕业论文 计算机大专班学生应具备的教育教学能力 赵喜明 摘要: 在信息技术课程教学中, 信息技术教师是学习资源的设计者和开发者, 是学生学习过程的指导者, 是学生合作学习的组织者和协作者,是学生的学习伙伴, 是信息化学习环境的管理者, 是学生学习的评价者, 是教学的研究者。为了 顺利地适应角色的转变, 成功地扮演好各种新角色,信息技术教师必须具备下面 几种能力: 整体教学设计能力; 教学实施能力; 教学监控能力。教师只有具备了 这些能力, 才能上好每一节信息技术课。 关键词: 信息技术; 教学能力; 教师 在信息技术课程教学中, 信息技术教师是学习资源的设计者和开发者, 是学 生学习过程的指导者, 是学生合作学习的组织者和协作者, 是学生的学习伙伴, 是信息化学习环境的管理者,是学生学习的评价者, 是教学的研究者。为了顺利 地适应角色的转变, 成功地扮演好各种新角色, 信息技术教师必须具备下面几种 能力: 整体教学设计能力; 教学实施能力; 教学监控能力。教师只有具备了这些 能力, 才能上好每一节信息技术课。师范院校的计算机大专班学生就是未来的信 息技术教师, 在教育教学能力方面的培养就要按照中小学对信息技术教师的要求 来进行。 1 整体教学设计能力 如何进行系统的、整体的教学设计, 如何对教学过程中的各个要素及其关系 进行统一地、协调地安排, 如何用一种全新的教学设计的思想与方法来促进与改

进教学工作, 是目前信息技术教师急待发展的一种新能力。教师只有具备了系统化教学设计的能力, 并用现代化的教学设计思想和方法指导教育教学信息化的环境下的教学, 才能实现教学优化。教育教学信息化的环境下的教学设计的主要内容包括学习需求分析, 确定学习目标、设计学习资源和认知工具、选择认知工具和教学策略、对学习者的自主学习评价等等。 首先, 从设计的观念与方向上, 强调运用现代教育观念, 充分发挥学生的主动性和创新精神, 一切教学的安排应从学生的需求与特点出发, 改变以往只注重“教”, 而忽视“学”, 造成学生被动接受、缺乏原创精神的现象。可利用CAI 课件, 增设学生学习点、自学点, 举一反三, 精讲多练, 探索学生自主学习教学模式。 其次, 从设计的策略上, 强调运用系统观和整合的思想, 对教学过程中的各个要素进行全面的分析与研究, 对其间关系进行协调的、整合的把握。同时强调设计中的问题解决策略, 强调设计的创造性与灵活性。当前学校中开展的信息化教学一般是计算机课堂教学和网络教学相结合的教学过程, 因此, 教师应该把传统教学策略和网络教学策略结合起来, 突出网络特点, 使之灵活运用到教学中去。 其三, 从设计的方法上, 强调对学生的分析, 强调师生之间关系和角色的重新定位, 强调对教学过程的整体化设计, 强调新的技术与教学过程的有机结合, 强调合作学习、问题解决等教学策略与方法在学生创新能力培养中的地位与作用。 2 教学实施能力

网上图书商城设计与实现毕业论文

网上图书商城 摘要 (3) 引言 (4) 1.1研究背景 (4) 1.1.1国内外电子商务发展情况 (4) 1.1.2网上图书商城的现状 (4) 1.2开发网上图书商城的意义 (4) 1.3.1 目标:建立完善的网上图书商城 (5) 1.3.2 《网上图书商城》系统特点 (5) 第一章解决方案的选择 (5) 1.1系统的说明 (5) 1.1.1系统开发环境 (6) 1.2可行性分析 (6) 1.2.1 风险分析 (6) 1.3设计方案:对涉及工具和技术相关说明 (6) 1.3.1 B/S 体系结构 (6) 1.3.2 SQL Server (7) 1.3.3 https://www.doczj.com/doc/e96942496.html, (7) 第二章需求分析 (7) 2.1功能需求 (7) 2.2.1前台功能 (8) 2.2.2后台功能 (8) 第三章总体设计 (9) 3.1功能设计 (9) 3.1.1功能模块图 (9) 3.1.2功能模块设计 (10) 3.2数据库设计 (10) 3.2.1概念设计 (10) 3.2.2设计局部ER模式 (11) 3.3设计全局ER模式 (18) 3.3.1局部ER模式的合并 (18) 3.3.2消除冲突 (18) 3.3.3全局ER模式的优化 (18) 第四章详细设计 (23) 4.1.前台功能设计 (23) 4.1.1.网站首页 (23) 4.1.2.用户注册 (24) 4.1.3.用户登录 (24) 4.1.4图书列表 (25)

4.1.5图书搜索 (26) 4.1.6.购物车 (27) 4.1.7.修改密码 (28) 4.1.8.个人订单 (28) 4.2.后台功能设计 (29) 4.2.1.管理员登录 (29) 4.2.2.图书管理 (30) 4.2.3.类别管理 (32) 4.2.4.出版社管理 (32) 4.2.5.入库管理 (33) 4.2.6订单管理 (34) 4.2.7.出库管理 (35) 4.2.8.库存管理 (36) 第五章编码实现 (37) 5.1数据库连接 (37) 5.2会员登录 (37) 5.3购物车 (39) 5.4图书入库 (41) 第六章测试和维护 (43) 6.1调试和测试 (43) 6.2系统维护 (43) 结束语 (44) 主要参考文献 (44) 致谢 (45)

论文外文文献翻译及原文

毕业设计(论文) 外文文献翻译 文献、资料中文题目:非常https://www.doczj.com/doc/e96942496.html, 文献、资料英文题目:Extreme ASP.NE 文献、资料来源: 文献、资料发表(出版)日期: 院(部): 专业: 班级: 姓名: 学号: 指导教师: 翻译日期: 2017.02.14

毕业设计(论文)外文资料翻译 学院 专业 学生姓名 班级学号 外文出处 附件:1.外文资料翻译译文;2.外文原文 指导教师评价: 1.翻译内容与课题的结合度:□优□良□中□差2.翻译内容的准确、流畅:□优□良□中□差3.专业词汇翻译的准确性:□优□良□中□差4.翻译字符数是否符合规定要求:□符合□不符合 指导教师签名: 年月日

附件1:外文资料翻译译文 非常https://www.doczj.com/doc/e96942496.html, 1.1Web 部署项目 当ASP 第一次发布时,Web 编程还比较困难,因为需要 IIS 来处理 ASP 页。后来,https://www.doczj.com/doc/e96942496.html, 2.0 和 Visual Studio? 2005 通过引入网站开发模型使一切工作都变得容易了。借助该网站模型,您不必在 Visual Studio 中创建新项目,而是可以指向一个目录并开始编写网页和代码。此外,您还可以使用内置的 https://www.doczj.com/doc/e96942496.html, Development Server 快速测试站点,https://www.doczj.com/doc/e96942496.html, Development Server 将 https://www.doczj.com/doc/e96942496.html, 寄宿在一个本地进程中,并消除了必须安装 IIS 才能进行开发这一先决条件。该网站模型的魅力在于您在开发 Web 应用程序时无需考虑打包和部署。需要其他类时怎么办?向 App_Code 目录添加一个 .cs 文件即可开始编写。希望将可本地化的字符串存储在资源文件中时怎么办?向 App_GlobalResources 目录添加一个 .resx 文件并键入字符串。一切都顺顺当当;您根本就不必考虑编译和部署方面的事情。 在准备进行部署时,您有多种可选方案。最简单的方案是将文件复制到主运行服务器并按要求编译每一个文件(和在测试环境中一样)。第二种方案是使用 aspnet_compiler.exe 实用工具将应用程序预编译为二进制版本,之后将只剩下要放到服务器上的一组程序集、静态内容和配置文件。第三种方案也使用 aspnet_compiler.exe,但要创建一个可更新的二进制部署,其中 .as*x 文件保持不变(并且可修改),而所有代码文件都编译为二进制程序集。 这似乎涵盖了每一种可能的情况,开发人员可以一心一意地编写 Web 应用程序,而在以后实际部署时再作打包和部署决定。不过,此模型也遭到了相当大的反对,特别是那些习惯了自己开发的 Web 项目是在实际项目文件中指定的实际项目的开发人员的反对,这些项目允许注入生成前和生成后函数、从生成过程排除文件以及使用命令行开关在调试和发布版本之间进行切换等操作。有鉴于此,Microsoft 迅速推出了 Web 应用程序项目(即 WAP),最初它是作为 Visual Studio 2005 的插件发布的,现在包含在 Visual Studio 2005 Service Pack 1 (SP1) 中,Visual Studio 2005 Service Pack 1 (SP1) 可从https://www.doczj.com/doc/e96942496.html,/vstudio/support/vs2005sp1 下载。 WAP 可替代与 Visual Studio .NET 2005 Web 项目模型非常接近的网站模型。新的WAP 模型会在生成过程中编译所有源代码文件,并在本地的 /bin 目录中生成一个用于部署的程序集。WAP 还使得增量采用 https://www.doczj.com/doc/e96942496.html, 2.0 引入的新的分部类代码隐藏模型变得更

相关主题
文本预览
相关文档 最新文档