顯示具有 技術問題 標籤的文章。 顯示所有文章
顯示具有 技術問題 標籤的文章。 顯示所有文章

2020年3月16日 星期一

Views

[練習問題] 無法載入檔案或組件'System.Web' 或其相依性的其中之一。試圖載入格式錯誤的程式

  當自己在練習使用C# ASP.NET 中TreeNode類別時,下載組件System.Web.dll放在bin資料夾下,卻發生此問題。

  我以為是我下載網址的組件有問題,因為Nu Gallery已經找不到此組件,所以就到別的網站去下載,不過將錯誤訊息打在google上,有大 大分享說是IIS 應用程式集區預設不支援32位元。好吧!有解法來試試看唄!

  我的錯誤訊息:




    解法:設定IIS讓它啟用32位元的應用程式。

    1.先開啟IIS,在DefaultAppPool按右鍵進階設定。


  2.在(一般)中,啟用32位元應用程式設成True。


   題外話,會使用這個是因為在練習這支影片內容。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~大功告成~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 


2020年2月1日 星期六

Views

[開發問題] 'Microsoft.ACE.OLEDB.12.0' 提供者並未登錄於本機電腦上


    最近開發.NET Webform ImportExcel遇到如題的問題,為了解決這個問題,大概撞了四天牆。謝天謝地!我還是透過網路上分享的資訊,撞破這道牆,還是得紀錄下來,不然很快又忘記了。

問題解決過程:

(1)為什麼一直出現這個問題?
 網路上有一面倒的資訊是說,連線字串錯誤,確實我自己也是因為連線字串DataSource路徑出錯,不過網路上的網友比較沒提到這塊,每個人犯錯地方不一樣就東試試西試試這樣,以上題供正確寫法,大家在參考看看
/*取得EXCEL上傳的路徑*/
   string _conn = "Provider=Microsoft.ACE.OLEDB.12.0;"
                  + "Extended Properties='Excel 12.0;HDR=NO;IMEX=1';"  
                  + "Data Source=D:\\Demo\\test.xlsx";//每個人不一樣                       
                 
HDR ( HeaDer Row )若指定值為 Yes,代表 Excel 檔中的工作表第一列是欄位名稱,若指定值為 No,代表 Excel 檔中的工作表第一列就是資料了,沒有欄位名稱。

IMEX 有三種模式,分別讀寫行為也不同。
0 is Export mode
1 is Import mode

Extended Properties='Excel 12.0'這個是固定寫法,不要隨便改變,我當初還想說是不是Excel對應版本不同,所以這邊寫法要變,錯錯錯!!!!!
目前Excel 2007~2016都是寫這個啊!不要亂改。

(2)連線字串改過後為什麼還是錯?
 網路上還有一說法,就是windows灌的版本不同,和office版本不同才會出現問題,確實這個也是影響點(但是目前電腦都是64位元,所以只要知道自己office的版本,灌對應套件就可以解決問題了,網路舊資訊寫得太模糊了)。
先檢查作業系統我的是 windows 10 和 office 2016 32位元(我一直以為是64位元),導致我在灌Microsoft Access Database Engine 2010 可轉散發套件選64位元還是一直出錯。因為網路很多資訊都是片段,我東試試西試試也還是試不出來。
目前資訊如下(以我的作業環境解釋):
如果Provider=Microsoft.ACE.OLEDB.12.0 就要灌Microsoft Access Database Engine 2010 32位元版本
如果Provider=Microsoft.ACE.OLEDB.15.0 就要灌Microsoft Access 2013 Runtime 32位元版本,取決連線字串的寫法,去對應你要灌什麼軟體。基本上都可以打開xlsx檔案(目前我的office 2016測試過都沒問題)。

(3)綜合上述
1.出錯先檢查作業系統和office版本,去找office版本對應的套件如(2)所述
2.檢查連線字串每一個寫法,確保正確性,不然還是會出現如題的錯誤。
3.會記錄這篇原因:目前網路上解決資訊都太舊了,我相信這個老掉牙問題,還是會卡住新手的。
4.如果有路過的民眾參考了我的作法,可以留言給我,看看是否有成功解決問題,或是我有寫錯地方都可以跟我分享。

2019年12月9日 星期一

Views

[開發問題] C# 正則表達式的用法

1.何謂正則表達式
  http://www1.nttu.edu.tw/klou/course/921/js/09-regular.htm

2. 程式碼練習
 
using System;

     using System.Text.RegularExpressions;     

     public class Program

    {
       public static void Main()

      {

         string input = "%abqw-_1";
         string pattern = @"^[a-z0-9-_%]*$";(表示開頭(^)到結尾($)可以是比對到多次的a-z或0-9或一槓(-)或底線(_)
         或百分比(%))

          foreach (Match match in Regex.Matches(input, pattern))

           Console.WriteLine(match.Value);  

       }

    }

3. 練習教程
  https://www.runoob.com/csharp/csharp-regular-expressions.html

2019年7月10日 星期三

Views

在window10 找不到 IIS admin


安裝過程:


首先安裝IIS時,我是參考這篇網誌的,其實已經詳細了,照著安裝為什麼還是錯?

在路徑:控制台\所有控制台項目\系統管理工具\服務  並沒有IIS admin 。


解決方式:


1.用中文關鍵字在google 搜尋還是找不到,花了一點時間.....

2.改成英文關鍵字,終於在stack overflow找到相關文章,關鍵就是這張圖:


    紅色框框是我漏掉的部份!!!!! 後來補上在WINDOW10內就出現囉,後續測試IIS都正常運作