ASP.NET MVC2+MSSQL+Godaddy
? ? 先感謝一下博客園,在網(wǎng)上浪了這么長時間,現(xiàn)在發(fā)現(xiàn)還是博客園的文章技術含量要高一點!
? ? 現(xiàn)在言歸正傳,最近在課外學習ASP.NET MVC,也在微軟的官網(wǎng)上學了一些例子教程,現(xiàn)在剛好有機會可以實踐一下,一個簡單的網(wǎng)頁版調(diào)查問卷,自然記錄結果是必須的功能,
? ? 唯一要求不同的時,在對于問卷的場景材料要求是隨機出現(xiàn)的即不是固定不變的,這個功能在MVC中也是十分好實現(xiàn),這里也就是不在贅述。?下面主要按照四個模塊來進行該網(wǎng)站
? ? 的總結:
? ? ASP.NET ?MVC2
? ? 先說一下,為什么這里選用MVC2而不是MVC3,本來我在學習的時候也都是從MVC3開始的,但是在查看多了godaddy的賬號之后,發(fā)現(xiàn)自己的賬號只能支持ASP.NET 3.5,如果要
? ? 支持ASP.NET4.0則必須將賬戶升級到4GH,即godaddy的第四代網(wǎng)絡技術,但是是要付費的,所以這里就直接采用了MVC2,免得引起后續(xù)一系列的麻煩。由于這是個網(wǎng)站功能很簡單
? ? 所以,在網(wǎng)站設計方面,沒有太多需要講的,這里需要說明的主要有,兩點:
? ? 1. 關于IIS6.0及以下的IIS服務器的路由設置,這在前面一片的route+htmlHelper中已經(jīng)有了講解。
? ? 2. web.config的配置說明:
? ? ? ?這里引用以下下面鏈接的文章:http://www.cnblogs.com/a311300/archive/2010/01/26/1656881.html,這里將其中的參數(shù)說明復制過來,并加上自己的以下搜集如下:
參數(shù)說明:
1.Data Source
SqlConnectionStringBuilder的DataSource屬性,對應connectionString中的Data Source,“Data Source”可以由下列字符串代替:
“server”,“address”,“addr”和“network address”。Data Source=.\SQLExpress也可以寫成這樣Data Source=(local)\SQLExpress。
2.Integrated Security
SqlConnectionStringBuilder的IntegratedSecurity屬性,對應connectionString中的Integrated Security,“Integrated Security”可以
寫成“trusted_connection”,為true時,使用當前的 Windows 帳戶憑據(jù)進行身份驗證,為false時,需要在連接中指定用戶 ID 和密碼。
3.AttachDBFilename
SqlConnectionStringBuilder的AttachDBFilename屬性,對應connectionString中的AttachDBFilename,“AttachDBFilename”可以寫成“extended properties”,“initial file name”。AttachDbFileName屬性指定連接打開的時候動態(tài)附加到服務器上的數(shù)據(jù)庫文件的位置。
這個屬性可以接受數(shù)據(jù)庫的完整路徑和相對路徑(例如使用|DataDirectory|語法),在運行時這個路徑會被應用程序的App_Data目錄所代替。
4.User Instance
SqlConnectionStringBuilder的UserInstance屬性,對應connectionString中的User Instance ,該值指示是否將連接從默認的 SQL Server Express 實例重定向到在調(diào)用方帳戶之下運行并且在運行時啟動的實例。UserInstance=true,在這種情況下,SQLServerExpress為了把數(shù)據(jù)庫
附加到新的實例,建立一個新的進程,在打開連接的用戶身份下運行。在ASP.NET應用程序中,這個用戶是本地的ASPNET帳號或默認的
NetworkService,這依賴于操作系統(tǒng)。為了安全地附加非系統(tǒng)管理員帳號(例如ASP.NET帳號)提供的數(shù)據(jù)庫文件,建立一個獨立的SQLServer用戶實例是必要的。
5.min pool size=5;max pool size=512;
數(shù)據(jù)庫連接池最小連接數(shù)min pool size,數(shù)據(jù)庫連接池最大連接數(shù)max pool size.
6.DataDirectory是什么?
asp.net 2.0有一個特殊目錄app_data,通常Sql server 2005 express數(shù)據(jù)文件就放在這個目錄,相應的數(shù)據(jù)庫連接串就是:
connectionString="…… data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|data.mdf;User
Instance=true"這里有一個DataDirectory的宏,它表示什么意義呢?
DataDirectory是表示數(shù)據(jù)庫路徑的替換字符串。由于無需對完整路徑進行硬編碼,DataDirectory 簡化了項目的共享和應用程序的部署。例如,無需使用以下連接字符串:
"Data Source= c:\program files\MyApp\app_data\Mydb.mdf"
通過使用|DataDirectory|(包含在如下所示的豎線中),即可具有以下連接字符串:
"Data Source = |DataDirectory|\Mydb.mdf" 。
不僅僅是Sql server 2005 express中使用,也可以在其它的文件數(shù)據(jù)庫中使用,例如Sqllite數(shù)據(jù)庫文件的連接字符串:
<add name="DefaultDB"
connectionString="DriverClass=NHibernate.Driver.SQLite20Driver;Dialect=NHibernate.Dialect.SQLiteDialect;Data
Source=|DataDirectory|\data.db3" />
7.connect timeout= 9000
與其他 .NET Framework 數(shù)據(jù)提供程序(SQL Server、OLE DB 和 ODBC)中的 Connection 對象不同,OracleConnection 不支持
ConnectionTimeout 屬性。使用屬性或在連接字符串中設置連接超時沒有效果,而且返回的值總是零。OracleConnection 也不支持 Database
屬性或 ChangeDatabase 方法。
8. Initial Catalog
指定鏈接數(shù)據(jù)庫服務器時,初始鏈接的數(shù)據(jù)庫的名稱。?
MSSQL
這里的MsSql服務器基本上沒有什么好說的,唯一需要注意的就是在網(wǎng)站發(fā)布到godaddy之后,需要注意其中配置文件中的數(shù)據(jù)庫連接設置。
具體設置方法會在接下來的一節(jié)的godaddy配置中給出詳細說明。
godaddy配置
首先說明一下,在沒有進行這個網(wǎng)站部署之前的該賬戶的基本狀態(tài):
asp.net3.5;數(shù)據(jù)庫服務器未建立;IIS6.0;自己設置了FTP賬戶可客戶端(這個幫了不少忙); 在godaddy上注冊的域名;
下面就按照自己部署網(wǎng)站時出現(xiàn)的問題的順序進行敘述:
?1.最先出現(xiàn)的就是前面一篇文章中講的MVC路由問題,由于在寫頁面是都是直接用的HTML語法,而沒有使用HTMLhelper,所以很多涉及到連接的位置路徑都已經(jīng)
? ?固定下來,所以要將其鏈接中全部加上.aspx。有點麻煩,同時又看到IIS7的integrated mode可以完美的支持MVC的路由,所以決定將IIS從IIS6.0升級到IIS7.0。
2.IIS升級
?my Account ---> my product之后,找到如下內(nèi)容:
? ? ? ? 進入后,找到你要升級的賬戶,單擊--->
?在頁面中找到
? ? ? ? ?這里的IIS已經(jīng)是7.0了,如果不是7,0且可以升級的話,旁邊會出現(xiàn):upgrade,單擊,然后就可以一步一步的完成IIS的升級了。
? ? ? ? ?在完成IIS升級之后,一般情況下,godaddy會把你的所有網(wǎng)站全部移到一個新的空間,然后給你一個新的IP地址。并且會發(fā)郵件告知你需要修改賬戶中所有域名的A記錄。
? ? ? ? ?如果你的域名都是在godaddy中申請的話,那么godaddy會幫你自動把A記錄都修改好,但是如果你的域名不是在godaddy中申請的,那么則你需要到你的域名管理商那里
? ? ? ? ?修改你的A記錄。 在這一切都完成之后,我們不帶數(shù)據(jù)庫的ASP.NET MVC網(wǎng)頁就可以在上面運行了。
? ? ? ? ?3.數(shù)據(jù)的配置
? ? ? ? ?如果你的網(wǎng)站時動態(tài)的,那么你就需要在godaddy賬戶中創(chuàng)建一個你想要的數(shù)據(jù)庫,4GH可以支持server 2008 R2版本的數(shù)據(jù)庫。之前都是server 2005的。
? ? ? ? ?具體的創(chuàng)建步驟可以參照:http://hostbus.net/forum.php?mod=forumdisplay&fid=62這里面應該都有。
? ? ? ? ?完成之后,現(xiàn)在到了最關鍵的一步了,我們怎樣連接數(shù)據(jù)庫,放心我的godaddy會有已經(jīng)生成號的鏈接代碼:
? ? ? ? ?進到數(shù)據(jù)庫管理頁面:
? ? ? ? ? ?單擊鉛筆圖標進入如下頁面:
? ? ? ? ? 單擊其中的紅色框框部分,就可以查看該數(shù)據(jù)庫的鏈接字符串了。
? ? ? ? ?Javascript
? ? ? ? ?在進行該網(wǎng)站設計的時候,少許用到了寫js,由于對js也是一知半解,用的不多,平常都只是寫些簡單的js函數(shù),所以,這里我也要啰嗦一下:
? ? ? ? ?1. 對于js中函數(shù)的應用,例如:functionName和functionName();前者表示的對函數(shù)的引用,用C語言的話來說,就是相當于函數(shù)指針差不多的東西。
? ? ? ? ? ? 所以在jquery里面$().click(functName); 這里函數(shù)應該是之前已經(jīng)聲明的函數(shù)。這樣,在單擊該個HTML元素,他就會執(zhí)行該函數(shù)。
? ? ? ? ?2. 對于form中的onsubmit事件。
? ? ? ? ? ?首先需要明確的是,form中的onsubmit事件和submit方法,前者是一個form事件,就跟onclick的性質一樣。我們可以為該事件注冊函數(shù)。而submit則是
? ? ? ? ? ?form進行表單提交時的方法,即只要我們執(zhí)行submit,我們的表單就是進行提交。它的響應是固定的,我們是不能為其進行函數(shù)注冊,因為他就不是一個事件
? ? ? ? ? ?所以我們在用Jquery進行form的驗證的時候,就可以這么注冊:$().submit(functionName);一定要記住,這里的submit和進行表單提交的submit方法是
? ? ? ? ? ?沒有任何關系的。?
? ? ? ? 差不多了!有什么不對的地方,歡迎大家指點啊!!
? ? ? ? Thank You!Wei!
轉載于:https://www.cnblogs.com/thinkanddo/archive/2011/12/19/2293399.html
總結
以上是生活随笔為你收集整理的ASP.NET MVC2+MSSQL+Godaddy的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 敏捷开发团队管理系列之三:程序与测试团队
- 下一篇: 40种为网页设计师准备的高品质和免费的多