顯示具有 ASP.NET core 標籤的文章。 顯示所有文章
顯示具有 ASP.NET core 標籤的文章。 顯示所有文章

2023年6月25日 星期日

[ASP.NET + LINQ] LINQ超入門 - 試聽 - 查詢(Query)語法與方法(Method)語法


Youtube影片網址  影片連結

9vs1.com網站優惠折扣,"LINQ超入門 " 由此直連  https://www.9vs1.com/go/?i=87pcf6zfmfbi

ASP .NET MVC 完整課程,適用.NET 6.0/7.0/8.0。超過 120小時"(外面買不到) 已開始販售,請來信詢問(一定有優惠!) mis2000lab (at) yahoo.com.tw; school (at) mis2000lab.net。謝謝您
課程列表與大綱,請看 mis2000lab.pixnet.net/blog/post/35172535

學員感言與推薦 - www.dotblogs.com.tw/mis2000lab/2023/01/30/mis2000lab_MVC_onlineLearning2023

9vs1 . com網站的三天入門課程 9vs1.com/go/?i=192277ff2276

第一天 ASP.NET MVC 完整影片(5.5小時 / .NET 4.x版)免費試聽。詳見 mis2000lab.pixnet.net/blog/post/35141956   。  這位學員學了半年,公司幫他加薪150%(真人真事)   www.dotblogs.com.tw/mis2000lab/2020/09/23/ASPnet_MVC_online_20200923

初學者第一天的MVC入門課程。一般的網站(購物商城、新聞媒體)有哪些必備功能,我們學習MVC也能做到嗎?MVC又是什麼?能否讓我一個範例就懂?

這是一門程式設計的課,會講解程式碼,建議使用「大螢幕」觀賞。謝謝。
看完一次之後,第二次觀賞時,請看一段(就暫停),親手做一段!
務必親自動手做!不要只是看!


2023年6月24日 星期六

[ASP.NET + LINQ] LINQ超入門 - 課程試聽

youtube影片網址 https://youtu.be/JvXYZSbIkFE

9vs1 .com網站優惠折扣,"LINQ超入門 " 由此直連 https://www.9vs1.com/go/?i=87pcf6zfmfbi ASP .NET MVC 完整課程,適用.NET 6.0/7.0/8.0。超過 120小時"(外面買不到) 已開始販售,請來信詢問(一定有優惠!) mis2000lab (at) yahoo.com.tw; school (at) mis2000lab.net。謝謝您 課程列表與大綱,請看 mis2000lab.pixnet.net/blog/post/35172535 學員感言與推薦 - www.dotblogs.com.tw/mis2000lab/2023/01/30/mis2000lab_MVC_onlineLearning2023 9vs1 . com網站的三天入門課程 9vs1.com/go/?i=192277ff2276 第一天 ASP.NET MVC 完整影片(5.5小時 / .NET 4.x版)免費試聽。詳見 mis2000lab.pixnet.net/blog/post/35141956 。 這位學員學了半年,公司幫他加薪150%(真人真事) www.dotblogs.com.tw/mis2000lab/2020/09/23/ASPnet_MVC_online_20200923 初學者第一天的MVC入門課程。一般的網站(購物商城、新聞媒體)有哪些必備功能,我們學習MVC也能做到嗎?MVC又是什麼?能否讓我一個範例就懂? 這是一門程式設計的課,會講解程式碼,建議使用「大螢幕」觀賞。謝謝。 看完一次之後,第二次觀賞時,請看一段(就暫停),親手做一段! 務必親自動手做!不要只是看!

2023年1月31日 星期二

[學員感言] mis2000lab課程評價 - ASP.NET MVC , WebForm

 這裡收錄了學員的感言,由他們的感謝,證明課程的好壞…..

完整課程 超過 115小時"(外面買不到) 已開始販售,請來信詢問(一定有優惠!) mis2000lab (at) yahoo.com.tw; school (at) mis2000lab.net。謝謝您 

課程列表與大綱,請看 mis2000lab.pixnet.net/blog/post/35172535 


第一天 ASP.NET MVC 完整影片
免費試聽。詳見 mis2000lab.pixnet.net/blog/post/35141956 。 

[ASP.NET Core MVC]第一天 免費課程 3小時完整試聽

https://www.dotblogs.com.tw/mis2000lab/2023/01/30/AspNetCore_MVC_First_Day_Free_20230130

這裡收錄了學員的感言,由他們的感謝,證明課程的好壞











[ASP.NET Core MVC]第一天 免費課程 3小時完整試聽

[ASP.NET Core MVC]第一天 免費課程 3小時完整試聽











[學員感言] mis2000lab課程評價 - ASP.NET MVC , WebForm

https://www.dotblogs.com.tw/mis2000lab/2023/01/30/mis2000lab_MVC_onlineLearning2023

[ASP.NET Core MVC]第一天 免費課程 3小時完整試聽

https://www.dotblogs.com.tw/mis2000lab/2023/01/30/AspNetCore_MVC_First_Day_Free_20230130

2023年1月26日 星期四

[ASP.NET Core]一個範例立即瞭解 MVC網站架構


youtube影片網址 https://youtu.be/wJ2CroovIPc

完整課程 超過 115小時"(外面買不到) 已開始販售,請來信詢問(一定有優惠!) mis2000lab (at) yahoo.com.tw; school (at) mis2000lab.net。謝謝您 課程列表與大綱,請看 mis2000lab.pixnet.net/blog/post/35172535 9vs1 . com網站的三天入門課程 9vs1.com/go/?i=192277ff2276 第一天 ASP.NET MVC 完整影片(5.5小時 / .NET 4.x版)免費試聽。詳見 mis2000lab.pixnet.net/blog/post/35141956 。 這位學員學了半年,公司幫他加薪150%(真人真事) www.dotblogs.com.tw/mis2000lab/2020/09/23/ASPnet_MVC_online_20200923 初學者第一天的MVC入門課程。一般的網站(購物商城、新聞媒體)有哪些必備功能,我們學習MVC也能做到嗎?MVC又是什麼?能否讓我一個範例就懂? 這是一門程式設計的課,會講解程式碼,建議使用「大螢幕」觀賞。謝謝。 看完一次之後,第二次觀賞時,請看一段(就暫停),親手做一段! 務必親自動手做!不要只是看!

2022年7月28日 星期四

[ASP.NET Core MVC] WebAPI 與 Swagger( 自動建立 RESTful API 線上文件)

youtube 影片網址 - https://youtu.be/YR4vDhIpWAg

ASP. NET / .NET Core MVC - WebAPI 與 Swagger( 自動建立 RESTful API 線上文件)
從.NET 4.x版MVC一路升級 .NET Core MVC,
完整 超過一百小時 線上教程(教學影片)已經錄製完成並上線。


限時六折優惠,請來信詢問! mis2000lab (at) yahoo.com.tw ; school (at) mis2000lab.net 謝謝您。


[學員感言] mis2000lab課程評價 - ASP.NET MVC , WebForm

https://www.dotblogs.com.tw/mis2000lab/2023/01/30/mis2000lab_MVC_onlineLearning2023

[ASP.NET Core MVC]第一天 免費課程 3小時完整試聽

https://www.dotblogs.com.tw/mis2000lab/2023/01/30/AspNetCore_MVC_First_Day_Free_20230130

從最早的 75小時MVC課程,目前已經延伸到 115小時,也包含了 .NET Core

.NET Core 6 MVC線上教學 - MIS2000Lab 課程大綱 與 試聽

https://dotblogs.com.tw/mis2000lab/2021/07/18/NET_MVC_Online_Free_Learning_mis2000lab 

購買完整MVC課程(超過115小時),限時六折優惠並免費加贈兩萬元「.NET Core升級課程」,請直接來信洽詢

(太便宜!太划算,不能公開) mis2000lab (at) yahoo.com.tw ; school (at) mis2000lab.net

2020年3月26日 星期四

ASP.NET Core - FileUpload 檔案上傳 + NPOI

ASP.NET Core  3.1 — FileUpload 檔案上傳 + NPOI

我把以前NPOI的範例改成 .NET Core版,但在檔案上傳(FileUpload)上遇見一點問題。
ASP.NET Core .31 - FileUpload 檔案上傳跟 .NET完整版(MVC 5)有點不同
改用 IFormFile來做,但大同小異。

原廠文件就很清楚了,請看 https://docs.microsoft.com/zh-tw/aspnet/core/mvc/models/file-uploads?view=aspnetcore-3.1


上傳 + NPOI讀取 Excel檔

這個範例從 Web Form => MVC 5 => ASP.NET core寫法都差不多。

如果您要用 LinqToExcel,可以把 Excel的 "工作表"當成 DB資料表 那樣讀取,也很簡便。



== 檢視畫面 ==

為了支援檔案上傳,HTML 表單必須指定 multipart/form-data的編碼類型(enctype)。
若要支援上傳多個檔案的 files input 元素,請在 < input > 元素上提供 multiple 屬性。
這些寫法我盡量跟 MVC 5類似,初學者就不會覺得差異太大
   
    @using (Html.BeginForm("Create", "NPOI", FormMethod.Post, new { enctype = "multipart/form-data" }))
    {

               
                這裡需要手動改成 "檔案上傳"的表單元件 type="file"
                <  input type="file" id="FileUpload_FileName" name="FileUpload_FileName" />
                @*     若要支援上傳多個檔案的 files input 元素,請在 < input > 元素上提供 multiple 屬性         *@
               

                <  input type="submit" value="Create(檔案上傳 與 NPOI)" class="btn btn-default" />



                < h3 > @ViewBag.Message < /h3 >

    }


== 控制器 ==

(命名空間)
using System.IO;    //-- FileStream會用到這個命名空間
using System.Text;
using Microsoft.AspNetCore.Http;  //檔案上傳 IFormFile 會用到
// NPOI 2.0的命名空間 --   HSSF(Excel 2003), XSSF(Excel 2007), XWPF(Word 2007)。
using NPOI.XSSF.UserModel;   //-- XSSF 用來產生Excel 2007檔案(.xlsx)
using NPOI.SS.UserModel;    //-- v.1.2.4起 新增的。


        //=========================================
        //== 檔案上傳 與 NPOI -- 對應 Web Form的範例 -- NPOI_20_04_FileUpload.aspx
        //  https://docs.microsoft.com/zh-tw/aspnet/core/mvc/models/file-uploads?view=aspnetcore-3.1
        //=========================================

        public IActionResult Create()   // 基本款
        {   // 檢視畫面,為了「檔案上傳」,有些地方要自己動手修改。請看上面的「檢視畫面」。
            return View();
        }
        [HttpPost]
        public IActionResult Create(IFormFile FileUpload_FileName)   // 多檔上傳,請用 List
        {   //                                    **************
            try
            {             
                if (FileUpload_FileName.Length > 0)   // 檢查  是否 上傳檔案?
                {
                    XSSFWorkbook workbook;   // NPOI。透過 NuGet安裝,必須裝 DotNETCore專屬的NPOI版本。
                    using (var ms = new MemoryStream())
                    {
                         FileUpload_FileName.CopyTo(ms);
                        //if (ms.Length < 2097152)
                        //{   // 限制上傳檔案必須小於2MB。 https://docs.microsoft.com/zh-tw/aspnet/core/mvc/models/file-uploads?view=aspnetcore-3.1

                       
                        //}
                        //*** 方法二 ***   上傳檔案,不用存檔。直接讓NOPI 讀取檔案內容(Stream串流)
                        Stream stream = new MemoryStream(ms.ToArray()); 
                     
                        workbook = new XSSFWorkbook(stream);   // 將剛剛的Excel (Stream)讀取到工作表裡面
                        //== XSSFWorkbook() 只能讀取 System.IO.Stream

                    }
                    // 讀取 Excel裡面的工作表(跟以前 MVC 5完全相同)
                    #region
                    XSSFSheet u_sheet = (XSSFSheet)workbook.GetSheetAt(0);  // 0表示:第一個 worksheet工作表
                        StringBuilder SB = new StringBuilder();   // System.Text命名空間
                        XSSFRow headerRow = (XSSFRow)u_sheet.GetRow(0);  //-- Excel 表頭列    
                        // 表頭列,共有幾個 "欄位"?(取得最後一欄的數字)

                        for (int k = headerRow.FirstCellNum; k < headerRow.LastCellNum; k++)
                        {   // 把上傳的 Excel「表頭列」,每一欄位抓到
                            if (headerRow.GetCell(k) != null)   {
                                SB.Append(headerRow.GetCell(k).StringCellValue + "   ");
                            }
                        }
                        // for迴圈的「啟始值」要加一,表示不包含 Excel表頭列
                        for (int i = (u_sheet.FirstRowNum + 1); i <= u_sheet.LastRowNum; i++)
                        {   // 每一列做迴圈
                            XSSFRow row = (XSSFRow)u_sheet.GetRow(i);  //不包含 Excel表頭列的 "其他資料列"
                            for (int j = row.FirstCellNum; j < row.LastCellNum; j++)
                            {  //-- 每一個欄位(行)做迴圈
                                if (row.GetCell(j) != null)   {
                                    SB.Append(row.GetCell(j).ToString() + "   ");  //每一個欄位
                                }
                            }
                            ViewBag.Message = "上傳成功。" + SB.ToString();
                        #endregion
                    }
                }
            }
            catch   {
                ViewBag.Message = "上傳失敗。File upload failed!!";
            }
            return View();
        }

[學員感言] mis2000lab課程評價 - ASP.NET MVC , WebForm

https://www.dotblogs.com.tw/mis2000lab/2023/01/30/mis2000lab_MVC_onlineLearning2023

[ASP.NET Core MVC]第一天 免費課程 3小時完整試聽

https://www.dotblogs.com.tw/mis2000lab/2023/01/30/AspNetCore_MVC_First_Day_Free_20230130

從最早的 75小時MVC課程,目前已經延伸到 115小時,也包含了 .NET Core

.NET Core 6 MVC線上教學 - MIS2000Lab 課程大綱 與 試聽

https://dotblogs.com.tw/mis2000lab/2021/07/18/NET_MVC_Online_Free_Learning_mis2000lab 

購買完整MVC課程(一百小時),限時六折優惠並免費加贈兩萬元「.NET Core升級課程」,請直接來信洽詢

(太便宜!太划算,不能公開) mis2000lab (at) yahoo.com.tw ; school (at) mis2000lab.net



2020年2月5日 星期三

ASP.NET Core - (DB-First) Scaffold-DbContext的錯誤訊息

在MVC課程中,有一段補充教材
把原本 ASP.NET MVC 5的範例,改用 ASP.NET Core專案來做,基本上大同小異。
唯獨 DB-First「資料庫連結(DB Connection)」的地方,需要自己下指令。

當初錄影時,是VS 2019 +.NET Core 2.x版
但我把範例重新在 .NET Core 3.1重做一次,都是正常的。請放心。

有位學員發生了錯誤,

(1)  Scaffold-DbContext : 無法辨識 'Scaffold-DbContext' 詞彙是否為 Cmdlet、函數、指令檔或可執行程式的名稱。請檢查名稱拼字是否正確,如果包含路徑的話,請確認路徑是否正確,然後再試一次。
位於 線路:1 字元:1
+ Scaffold-DbContext 'Data Source=.\SqlExpress;Initial Catalog=xxxxxxx ...
+ ~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Scaffold-DbContext:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException



解決方法:

在VS 2019新增一個 ASP.NET Core 2.x 或 3.1專案後
務必先透過NuGet安裝兩個套件
-- 「Microsoft.EntityFrameworkCore.Tools」套件
-- 「Microsoft.EntityFrameworkCore.SqlServer」套件  註解:因為我用MS SQL Server來搭配

(課程中有講,如果您發生錯誤,可以先檢查一下,是不是自己漏了哪些步驟?     影片重播、回頭自己看一下,比對一下)




(2) Visual Studio 上方的功能列   「工具」 =>「Nuget套件管理器」=>「套件管理器主控台」
輸入指令  Scaffold-DbContext 'Server=.\sqlexpress;Database=xxxx' Microsoft.EntityFrameworkCore.SqlServer
出現這樣的錯誤:
A connection was successfully established with the server, but then an error occurred during the login process. (provider: Shared Memory Provider, error: 0 - 管道的另一端上無任何處理程序。)
與伺服器的連接已成功建立,但在登入程序時發生錯誤。 (provider: 共用記憶提供者, error: 0 - 管道的另一端上無任何處理程序。)

解決方法:

我上課使用的指令是
Scaffold-DbContext 'Server=.\sqlexpress;Database=資料庫名稱;Trusted_Connection=True;MultipleActiveResultSets=true' Microsoft.EntityFrameworkCore.SqlServer

(課程中有講,如果您發生錯誤,可以先檢查一下,是不是自己漏了哪些步驟?     影片重播、回頭自己看一下,比對一下)

之前上課介紹的微軟文件,現在找不到了(可能改版或是刪除)
所以他找到類似的網頁,照著做,卻發生錯誤  https://docs.microsoft.com/zh-tw/ef/core/managing-schemas/scaffolding

我也找不到當初的官方文件了,比較類似的是這個網頁介紹 Code-First,請參閱 https://docs.microsoft.com/zh-tw/aspnet/core/data/ef-mvc/intro?view=aspnetcore-3.1



[學員感言] mis2000lab課程評價 - ASP.NET MVC , WebForm

https://www.dotblogs.com.tw/mis2000lab/2023/01/30/mis2000lab_MVC_onlineLearning2023

[ASP.NET Core MVC]第一天 免費課程 3小時完整試聽

https://www.dotblogs.com.tw/mis2000lab/2023/01/30/AspNetCore_MVC_First_Day_Free_20230130

從最早的 75小時MVC課程,目前已經延伸到 115小時,也包含了 .NET Core

.NET Core 6 MVC線上教學 - MIS2000Lab 課程大綱 與 試聽

https://dotblogs.com.tw/mis2000lab/2021/07/18/NET_MVC_Online_Free_Learning_mis2000lab 

購買完整MVC課程(一百小時),限時六折優惠並免費加贈兩萬元「.NET Core升級課程」,請直接來信洽詢

(太便宜!太划算,不能公開) mis2000lab (at) yahoo.com.tw ; school (at) mis2000lab.net

2017年3月8日 星期三

[VS 2017的改變] ASP.NET Core 1.1 & ADO.NET


之前發表過的文章 -- ASP.NET Core & ADO.NET
在今天VS 2017上市以後 (2017/3/8) 全都掰掰了、全都不會動。

首先面臨的問題,就是 Project.json不見了,必須改由「專案名稱.csproj」來做設定
另外,在VS 2015(Update 3)的工具 -- ASP.NET Core Tooling Preview也消失了。原廠說法是「內建在VS 2017裡面」不再外掛

我們先來看看做了哪些改變吧?
第一,加入 System.Data.SqlClient 命名空間。您必須透過 NuGet來加入    這裡有異動!
    請在「您的專案」按下滑鼠右鍵....





安裝完成後,會放在下圖的位置




第二,檢查一下您的「專案名稱.csproj」檔案。
    記得請在「您的專案」按下滑鼠右鍵....才能修改這個檔案。
    因為之前的 project.json設定檔在新版 ASP.NET Core & VS 2017已經掰掰了,所以這裡有異動!





第三,讀取資料庫連結字串、讀取設定檔的程式略有修改    這裡有異動!
                var configurationBuilder = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json");
                //  讀取設定檔的內容,這裡記得要加上 System.IO命名空間
                IConfiguration config = configurationBuilder.Build();
                string connectionString = config["ConnectionStrings:DefaultConnection"];

讀取其他檔案裡面的設定值,可以參閱這篇文章
https://docs.microsoft.com/zh-tw/dotnet/articles/core/tools/project-json-to-csproj#buildoptions

2016年12月21日 星期三

ASP.NET Core & ADO.NET 入門 #1 -- 資料庫連結(SqlConnection)

ASP.NET Core & ADO.NET 入門 #1 -- 資料庫連結(SqlConnection)


ASP.NET Core & ADO.NET 入門 #1,最簡單的操作步驟
(1).  SqlConnection連結字串
本範例提供YouTube教學影片 + PDF電子書下載

***  行前準備  ***
首先,您可以先瞭解 開放原始碼(開源)的 ASP.NET Core(以前名為 ASP.NET 5
      [中文翻譯] ASP.NET 5 概觀 (ASP.NET 5 Overview,原作 Tom FitzMacken 2014/11/12)
      https://dotblogs.com.tw/mis2000lab/2014/12/03/aspnet_5_overview_webform_46      
      [中文翻譯] ASP.NET 5 簡介(Introducing ASP.NET 5,原作ScottGu 2015/2/23)
      https://dotblogs.com.tw/mis2000lab/2015/03/11/aspnet_5_introduce_scottgu_20150223

接著,當您打開 VS 2015 (Update 3)的時候,可能要先安裝這個套件 for VS 2015。這個 Tool 還是 Preview版
      系統會自動偵測,並詢問您是否安裝?

以下的範例,是從 Wrox出版的這本書而來,您可以參閱此書的 第三十七章(原廠網站有範例下載)

Professional C# 6 and .NET Core 1.0


Christian Nagel
ISBN: 978-1-119-09660-3
1536 pages
April 2016......註解:提醒您,這本書以為 Windows Form 主軸,並非 網頁範例為主
==========================================================================
YouTube教學影片 -- https://youtu.be/1UaO8C2MnJQ


*** 開始動作 ***
(1). VS 2015 新建一個 ASP.NET Core 的 Web專案。
      下一步,我選擇了「」專案

(2). 這是ASP.NET Core 「」專案的架構
很抱歉,關於這個架構的檔案、目錄,我暫時沒有研究。如果您想進一步瞭解,請參與網路上的其他文章

(3). 預設的狀態下,您就可以編譯這個專案,而且看見結果(執行後,網頁出現 Hello World 字樣)
對照起來,原來是在 Startup.cs這個檔案的最後下方,就有 Hello World 字樣

(4). 我們加入熟悉的 ADO.NET程式碼(以 DataReader + SqlConnection / SqlCommand為例)
    如果您不熟悉,可以參閱以前的文章與範例 -- 

這裡的變化比較大。
以前撰寫程式時,如果缺乏 NameSpace,您可能要在程式碼「最上方」自己動手寫進來
甚至.....您要使用「加入參考」把這個DLL檔(二進位檔案)加入您的網站或專案

但是在 ASP.NET Core,我們可以有下面兩種作法。任選其一即可。

4-1.    透過 Visual Studio來幫忙,自己會幫您完成。詳見下面圖解。
Visual Studio會自動幫您加上 NameSpace,也會在 project.json設定檔裡面,加入必要的元件。


4-2.    當然,如果您是死硬派!硬漢!堅持要動手寫!
          在 project.json設定檔裡面,也可以透過智慧選字(IntelliSense),會自動跳字讓您填寫。

(5). 程式碼大致如下:

                //== 方法一 ==   
                string connectionString = @"server=.\sqlexpress;integrated security=SSPI;database=我的資料庫名稱";
                var conn = new SqlConnection(connectionString);
                conn.Open();
                // Do something useful
                await context.Response.WriteAsync("
資料庫連結成功");
                conn.Close();
               //== 當然,我們可以把資料庫的連結字串,寫在設定檔裡面。例如 appsettings.json設定檔,下一篇文章 為您解說。
              //{
              //  "ConnectionStrings": {
              //    "DefaultConnection": "Server=.\\sqlexpress;Database=我的資料庫名稱;Trusted_Connection=True;MultipleActiveResultSets=true"
              //  }
              //}

==========================================================================

Q :  ADO.NET怎麼只剩下 DataReader了?以前慣用的 DataSet呢?

詳見這篇文章的說明 (2016/2/10發表)  https://blogs.msdn.microsoft.com/dotnet/2016/02/10/porting-to-net-core/
System.Data. While the base layer is already part of .NET Core, i.e. the provider model and SQL client, some features are currently not available, such as schema support and DataTable/DataSet.

System.Transactions. While ADO.NET supports transactions, there is no support for distributed transactions, which includes the notion of ambient transactions and enlistment. (您可以參閱我這本書 -- 深入探索 .NET資料存取:ADO.NET + SqlDataSource+ LINQ (松崗),有討論 System.Transaction)


System.Net.Mail. There is currently no support for sending emails from .NET Core using these APIs.
目前 Core 1.0 不支援,不代表以後不支援。所以也不用太絕望....等等看吧......

下一篇文章:

ASP.NET Core & ADO.NET 入門 #2 -- 讀取appsettings.json設定檔與參數的寫法(SqlCommand)

http://mis2000lab.blogspot.tw/2016/12/aspnet-core-adonet-2.html 

我將思想傳授他人, 他人之所得,亦無損於我之所有;
猶如一人以我的燭火點燭,光亮與他同在,我卻不因此身處黑暗。----Thomas Jefferson

寫信給我--  mis2000lab (at) yahoo.com.台灣  或是  school (at) mis2000lab.net
................   facebook社團   https://www.facebook.com/mis2000lab   ......................
................   Google+   https://plus.google.com/100202398389206570368/posts ........
................  YouTube (ASP.NET) 線上教學影片  http://goo.gl/rGLocQ