网站开发系列之小问题解决

 1.WebConfig

 <configuration>

<appSettings></appSettings>

<system.web> 

<compilation debug="true">

My Note:  sometimes ,That debug status is  true or false will cause different performance,for example,a usercontrol ,named test.ascx,

if debug status is true ,its'name is Asp.test.ascx  while _ASP.test.ascx when debug is prohibited.

 

<system.web>

<globalization  requestEncoding="utf-8"  responseEncoding="utf-8" />

<httpHandlers

<add path="ajax/*.ashx" verb="POST,GET" type="Ajax.PageHandlerFactory, Ajax" />

</httpHandlers>

<authentication mode="Windows"/>
 <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm"></customErrors>

</system.web>

 

<system.web>

<sessionState mode="InProc"  stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false"  timeout="20"  />

</system.web>

My note:The mode attribute contains four states.

Inpro means  sessions are created in the server machine's own process.

StateServer meas we can appoint a special server which is charged of managing session  information.It will be applicable to distributed system.  So stateConnectionString attribute is necessary .

SQLServer:Store session information in sqlserver.  sqlConnectionString  is necessary .

Custom :

 Off:

 

2、说说VS2008里面的新建项目-网站(webApplication)和新建网站(website)的区别?

由于近期开发个小的功能模块,不想放在庞大的主站里面一起编译、发布,

所以采用了项目型网站的模式,但在IIS配置方面和Session共享的问题上,着实费劲了一把

现归纳几点用得到的:

(1)图标就不一样,项目网站多个C#的标记,猛的看起来像类库。右键选项是build,不是普通网站那种build web site

(2)build 以后,生成的文件不同。项目网站,所有的cs文件都编译到一个dll里面,也和类库有点像。普通网站build之后没啥不同 ,倒是发布的时候,普通网站每个cs文件发布成一个dll,项目网站发布后只有一个dll和所有的aspx.ascx之类

(3部署也容易啊,webapplication只需要复制dll 和页面文件,copy到网站里,妥了。所以适用于把一个很庞大的项目根据文件夹拆分成一个个的小的webapplication,

(4)webApplication新建的页面有三个文件,而且后台页面类包含命名空间,WebSite只有两个文件且没有默认的命名空间,区别就在于.designer.cs文件

其余的我也不知道了 ,摘了一段网上的 ,人家总结的很好啊

 

WebApplication 的优缺点:

(1)可以指定网站项目生成单一程序集,因为是独立的程序集,所以和其他项目一样可以指定应用程序集的名字、版本、输出位置等信息

(2)可以将网站拆分成多个项目以方便管理
(3)网站编译速度快,使用了增量编译模式,仅仅只有文件被修改后,这部分才会被增量编译进去

(4)

WebSite的优缺点:

(1)动态编译该页面,马上可以看到效果,不用编译整个站点(主要优势)

(2)可以使错误的部分和使用的部分不相干扰(可以要求只有编译通过才能签入)
(3)每个页面生成一个程序集

(4)可以把一个目录当做一个WebApplication来处理,直接复制文件就可以发布,不需要项目文件

两种编程模型的互相转换:我还没看到网上说的那个直接转换的方法哦

 

3。 问题是IIS中的网站和虚拟目录什么关系?虚拟目录的文件夹必须是网站的子文件夹吗?网站和虚拟目录之间,虚拟目录和虚拟目录之间可以共享session吗,为什么不能共享?为什么当我把虚拟目录的文件夹放在主网站下面,并且不在IIS里设置虚拟目录的时候,就可以共享session呢?

待解决??

 

4。用户控件中相对路径的问题?

 图片1始终显示,写法:<asp:Image ID="Image1" runat="server" ImageUrl="~/Images/head.JPG" />
图片2在根目录不能显示,写法:<img src='../Images/head.JPG' alt="测试" />
图片3始终显示,写法:<img src='<%=ResolveUrl("../Images/head.JPG") %>' alt="测试" />

所以如果使用html控件,iframe等,使用Resolveurl的方法 转换成服务器路径,服务器控件则大可不必

 


 

 


你可能感兴趣的:(网站开发)