iT邦幫忙

0

ASP.NET C# + SQL 連線字串異常

以下照網頁輸入 , 但還是一堆紅蚯蚓 , 是環境不對還是如何 , 我要做使用者與密碼驗證

https://ithelp.ithome.com.tw/upload/images/20180219/20104326KPZDZQrFlX.png

https://ithelp.ithome.com.tw/upload/images/20180219/20104326QA7PNd5LH4.png

https://ithelp.ithome.com.tw/upload/images/20180219/2010432693pYGlpv3o.png

https://ithelp.ithome.com.tw/upload/images/20180219/20104326epc18VrgEV.png

https://ithelp.ithome.com.tw/upload/images/20180219/20104326rUTE9AX6gy.png

SQL 資料庫

https://ithelp.ithome.com.tw/upload/images/20180219/20104326LEgkrayvYJ.png

https://ithelp.ithome.com.tw/upload/images/20180219/20104326SHTr3mgMQu.png

看更多先前的討論...收起先前的討論...
kksugsay iT邦新手 3 級 ‧ 2018-02-19 17:19:04 檢舉
學會寫一個專案,然後哩,換了一個專案,你還是不會,要靠人教的話,永遠進不了程式設計師的行業,理由很簡單,別人教的永遠會和職場上的有不少差距,更重要的該如何從中思考並融會貫通,如果說要有人真心教會別人,那可能需要你付上難以估計的代價,畢竟這是個人生存的工具,結論就是無法自學的話,你只是在浪費自己的生命~
alex9453 iT邦新手 4 級 ‧ 2018-02-19 17:38:35 檢舉
學了一個專案我就有概念,換下一個專案就容易了,家教教我應該跟他沒利益衝突,難道他是擔心,社會上又多一個會寫專案的人嗎?
testh iT邦新手 4 級 ‧ 2018-02-20 07:50:17 檢舉
WEB 程式看似簡單 ,
但後面您還會有 Html , JavaScript , CSS3 , 架站 , 版本 , 語系問題... 等.
Winform 乘法表 , 金字塔 , ..開始 ; 挫折少一點
alex9453 iT邦新手 4 級 ‧ 2018-02-20 08:07:15 檢舉
改學 PHP 會不會好一些 , 這是市場主流 , 否則學完 ASP.NET 還要學 PHP , 雖然 PHP 沒有簡易工具可用 , 但可問的人多 , 不會一直卡關 , 比較容易續繼下去
丹尼 iT邦研究生 4 級 ‧ 2018-02-20 08:55:29 檢舉
你去把資料庫練好一個東西練完之後在去練下一個 你可能想太多了 家教通常不會告訴你他去哪裡接案子
0
暐翰
iT邦大師 10 級 ‧ 2018-02-19 14:07:30
最佳解答

要先new 一個sqlconnection
再open

看更多先前的回應...收起先前的回應...
alex9453 iT邦新手 4 級 ‧ 2018-02-19 17:39:50 檢舉

還是改走PHP才是王道,這先放一邊。謝謝你指導

weiclin iT邦高手 5 級 ‧ 2018-02-19 17:41:51 檢舉

你可能太小看 PHP 了..

alex9453 iT邦新手 4 級 ‧ 2018-02-19 20:50:59 檢舉

怎麼說

weiclin iT邦高手 5 級 ‧ 2018-02-19 22:05:46 檢舉

PHP 這幾年改變很多, 以至於網路上很多都是過時的資訊, 新書也大都講得很淺, 而且台灣基本上使用的版本處於很極端的狀態, 有些公司還在用很舊的 5.3, 有些已經在用 7.2, 有些要求 composer 是基本, 有些還在到處 include, 如果再加上各家 framework 選擇上的差異那就更複雜, 一些 framework 的功能還得學習終端機指令操作
沒看一兩週前有人問 PHP 推薦什麼入門書, 結果大家擠不出幾本能推薦的, 建議你好好考慮清楚, PHP 雖然門檻低, 但要從入門到成為能用的工程師, 路並沒有比較好走

alex9453 iT邦新手 4 級 ‧ 2018-02-20 08:10:38 檢舉

據說 PHP 是市場主流 , 否則學完 ASP.NET 還要學 PHP , 雖然 PHP 沒有簡易工具可用 , 但可問的人多 , 不會一直卡關 , 比較容易繼續下去

froce iT邦研究生 4 級 ‧ 2018-02-20 13:07:11 檢舉

就算不是市場主流,除了ASP .net web form,其他都大同小異。
通一就能通百。

倒是你這麼注重主流,那當初為啥不學 ASP .net MVC?然後死抱著古老的 ASP .net web form 4.0 教學書不肯放手?
PHP 也沒你想像的那麼容易,官方文件和英文資料一樣要看,還是老話一句,要當IT,google才是你最好的老師,自己學會查比較重要。

話說我當初學 ASP .net,課程只有一星期,我只記得元件拉一拉,資料庫設定完,gridview弄一弄,你要的留言板根本不用幾小時就解決了,也不用寫多少 code。
我還有時間弄權限和玩 Bootstrap 咧。

只是 python 寫慣了,加上 ASP .net 真的易學難精,而且已經不是主流了,覺得沒必要學,要不然微軟的 gridview 真的很噁心,要開發工作報表很快。

froce iT邦研究生 4 級 ‧ 2018-02-20 13:47:36 檢舉

另外你看到紅蚯蚓,請問你第一個動作是看 debug 視窗還是跑上來問人?
我看到你的code第一個反應就是覺得你沒先 new 一個跟database連接的物件,然後 debug message 一定是 myConn not defined 之類的訊息。
真的照你所說,基礎都會了,我想這種簡單的 debug 不會難得倒你。

跟這邊一堆強者比,我真的只是基礎會了而已。

就像我說的,通一就會通百,我只寫 python 和 jQuery,但是要我去看其他人的 code,通常我還是看得懂,抓得出問題,這才叫基礎會了。
找幾個我回答其他語言問題的例子。
https://ithelp.ithome.com.tw/questions/10187263
https://ithelp.ithome.com.tw/questions/10187671
https://ithelp.ithome.com.tw/questions/10188277
https://ithelp.ithome.com.tw/questions/10188290

alex9453 iT邦新手 4 級 ‧ 2018-02-20 15:18:25 檢舉

我也想先學Asp.NET,但找不到適合的書來學,所以才學 web form,我想先學簡單的,在學mvc 會比較容易

froce iT邦研究生 4 級 ‧ 2018-02-20 16:41:02 檢舉

MVC 不是 web form 的進階版...
你到現在還搞不清楚的話,那...

alex9453 iT邦新手 4 級 ‧ 2018-02-20 17:13:25 檢舉

我知道不是進階版 , 但 MVC 比 WEB FORM 複雜吧 ! 簡單的不會 , 要會難的不容易吧 !

froce iT邦研究生 4 級 ‧ 2018-02-20 18:55:10 檢舉

那根本是兩套觀念,寫起來完全不一樣,真要說,ASP .Net mvc會和你之後要折騰的PHP會比較像,尤其你要用框架的話。

小魚 iT邦研究生 2 級 ‧ 2018-02-21 12:03:31 檢舉

我想說,
你日文學會了,
學韓文有比較容易嗎?

1
丹尼
iT邦研究生 4 級 ‧ 2018-02-20 08:53:29

你的認真用錯地方啦
你考慮一下當兵或者去大公司,從基層開始做起
人家真正發包案子都是撒錢在做專案 找已經有能力解決事情的人來用

如果你真的喜歡這領域的話 真心建議你先把書還有程式全部砍掉去大公司
玩電腦已經不值錢,要能夠解決客戶需求才是重點
我上次發包個案子給做網頁設計的廠商 才賺幾萬元
人家都要與客戶開會還有配合客戶時間 有時候技術隨著時代更新 你沒有去業界遊走
真正不會了解到別人在幹嘛,最怕是自以為事,翻翻書本就可以寫出好程式
你知道機房裡面有多少廠商跟多少看不見的油水,還有人家如何發包一個專案 專案內容要怎麼處理
如何跟廠商溝通。 如果我是雇主看過你的程式碼就知道你不大會寫程式 通常雇主會要求提供測試版本。 如果你慢一點或者沒有達到效果 別人就會考慮看看

馬克真心建議你 人際關係打好會比你坐在電腦前面練習會更好
專攻一個領域 一個領域玩完後在玩另外一個

建議你把一件事情開始學習 有成就後 存了點錢 在玩第二個

0
fij
iT邦新手 5 級 ‧ 2018-02-20 15:02:01

先講第一個問題
strConn 的綠蚯蚓說這個變數 沒有用過
那你這個測試程式 就沒搞頭了...

先解決這個問題吧
以下這個sample 大致有解決您的問題

https://www.dotnetperls.com/sqlconnection

4
棉花
iT邦新手 5 級 ‧ 2018-02-21 11:43:34

您會問這問題代表對C#的語法還不熟
這已經不是MVC或web form誰比較複雜的問題了
就算選一個比較簡單的框架,C#的基礎不夠,未來還是會遇到類似的問題

學程式並不是去背指令,而是在提升對程式語言的手感與概念
就像froce說的:通一就能通百
只要對程式語言有一定的概念,要學新的程式語言並不會花太久的時間

就像開車一樣,只要學會開車後,您會因為換了一台車就不會開了嗎?
頂多去熟悉一下新車的手感、抓一下車子前後左右的距離感,看一下有哪些新功能
實際上路開個幾趟就沒問題了

雖然我是資工出生,摸過各種程式語言
但沒有一個語言敢說是精通的

我第一份工作使用的語言是Delphi,在這之前我完全沒寫過Delphi相關程式
公司只給我一本Delphi入門書與source code
我只能靠著之前程式的基礎去研究前輩們的程式,搞懂每一段程式在做什麼
自己試著寫幾隻程式後就慢慢上手了

後來公司導入ASP.NET MVC,我以前一樣沒寫過C#相關程式
靠著微軟官方的學習資源,自學兩周後就開始投入專案開發的工作
雖然一開始寫得很生疏,寫出一堆dirty code
但在寫程式過程中不斷檢討自己的寫法,研究其他人的寫法後
MVC也慢慢地上手了


最後再附上我遇到您的問題時的思路
假設我之前完全沒寫過連接資料庫的經驗

我會先從第一隻紅蚯蚓出現的地方開始看起

SqlConnection myConn.Open();

依據過去寫其他語言的經驗,這裡可能是宣告的方式錯了,但我不知道正確的宣告方式
於是我去Google下關鍵字"C# SqlConnection",找到了微軟的文件:
https://msdn.microsoft.com/zh-tw/library/d7469at0(v=vs.110).aspx

在文件中找到SqlConnection的範例程式

private static void OpenSqlConnection()
{
    string connectionString = GetConnectionString();

    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        connection.Open();

        Console.WriteLine("State: {0}", connection.State);
        Console.WriteLine("ConnectionString: {0}",
            connection.ConnectionString);
    }
}

static private string GetConnectionString()
{
    // To avoid storing the connection string in your code, 
    // you can retrieve it from a configuration file, using the 
    // System.Configuration.ConfigurationSettings.AppSettings property 
    return "Data Source=(local);Initial Catalog=AdventureWorks;"
        + "Integrated Security=SSPI;";
}

但在程式中又發現沒看過的用法:using
於是我又去Google下關鍵字"C# using",找到保哥寫的介紹
https://blog.miniasp.com/post/2009/10/12/About-CSharp-using-Statement-misunderstanding-on-try-catch-finally.aspx

這樣我不但知道了SqlConnection的宣告方式,還額外學到using的用法

我要發表回答

立即登入回答