2020年4月21日 星期二

評估xxx函式逾時,且需以不安全的方法中止。這可能使目標處理序損毀。



評估xxx函式逾時,且需以不安全的方法中止。這可能使目標處理序損毀。

我選擇直接停用[啟用屬性評估及其他隱含函式呼叫]

---------------------------
Microsoft Visual Studio
---------------------------
評估 'System.Reflection.Assembly.LoadFrom' 函式逾時,且需以不安全的方法中止。這可能使目標處理序損毀。

如果問題定期發生,請考慮停用 [工具] -> [選項] 設定的 [偵錯] -> [一般] -> [啟用屬性評估及其他隱含函式呼叫] 或變更程式碼,以停用此方法的評估。如需此操作的資訊,請參閱說明。
---------------------------
確定   說明 
---------------------------



其他參考資訊
https://dotblogs.com.tw/rainmaker/2009/09/13/10593
如果要建立的DLL只有這個專案使用的話,那就放在Bin,請使用Assembly.Load
如果要建立的DLL是給多個專案使用的話,那就放在固定的地方,請使用Assembly.LoadFile
如果有特殊需求,就可以參考使用Assembly.LoadFrom

2018年4月24日 星期二

專案是複製&改名的 namespace 修改了


'/' 應用程式中發生伺服器錯誤。

編譯錯誤

描述: 資源編譯無法完成 (錯誤發生於服務要求)。請檢閱下列的特定錯誤詳細資料,並視情況修改您的原始程式碼。

編譯器錯誤訊息: CS0246: 找不到類型或命名空間名稱 'XXX1' (您是否遺漏 using 指示詞或組件參考?)


CS0246 C# The type or namespace name could not be found (are you missing a using directive or an assembly reference?)

--
[解]

若將 Asp.net MVC 專案複製後改名,

全域取代[命名空間]後,要專程去改 Views 裡面的 Web.config


裡面有一個共同引用的命名空間宣告

 


2018年1月31日 星期三

將 datetime2 資料類型轉換成 datetime 資料類型時




將 datetime2 資料類型轉換成 datetime 資料類型時,產生超出範圍的值。

陳述式已經結束。

entityframework EDMX 設定 datetime  的屬性 StoreGeneratedPattern = Computed


2018年1月26日 星期五

Google 機器人驗證 - reCAPTCHA




Google 機器人驗證 - reCAPTCHA



調整寬度 縮小 96.5%

    .g-recaptcha {
        transform:scale(0.965);
        transform-origin:0 0;
    }



2018年1月17日 星期三

CS0103: The name 'ViewBag' does not exist in the current context



Fix for "ViewBag" does not exist in current context within Razor MVC App




[錯誤] CS0103: The name 'ViewBag' does not exist in the current context

\bin\roslyn\csc.exe /t:library /utf8output /nostdlib+ 

/R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscorlib.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Runtime.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.Web.Infrastructure\v4.0_1.0.0.0__31bf3856ad364e35\Microsoft.Web.Infrastructure.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel\v4.0_4.0.0.0__b77a5c561934e089\System.ServiceModel.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\996fd327\24e15ceb\assembly\dl3\626f0e89\006ee39d_d6bfd201\Microsoft.DotNet.PlatformAbstractions.dll" /R:"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\996fd327\24e15ceb\assembly\dl3\69f767c6\de107f0b_2a70d301\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll"



[修正]

將 \Views\Web.config 放回正確位置.




2017年12月22日 星期五

指定的引數超出有效值的範圍。 參數名稱: site


[修正] 指定的引數超出有效值的範圍。 參數名稱: site


自從更新 win10 版本1709 之後就被關掉了


重新打開此功能


2017年11月13日 星期一

當記錄詳細資訊設定為 [詳細] 時,這些參考衝突會列在組建記錄檔中。





同一個無法解析之相依組件的不同版本之間發生衝突。
當記錄詳細資訊設定為 [詳細] 時,這些參考衝突會列在組建記錄檔中。

--

變更在建置記錄檔中包含的資訊量

  1. 在功能表列上,選擇 [工具]],則 [選項]。
  2. 在 [專案和方案] 頁面上,選取 [建置並執行] 頁面。
  3. 在 [MSBuild 專案建置輸出詳細等級] 清單中,選取下列其中一個值,然後選擇 [OK] 按鈕。
    詳細等級描述
    無訊息只會顯示組建的摘要。
    最小顯示組建的摘要和錯誤、被分類為高度和重要的警告訊息。
    Normal顯示組建的摘要;錯誤、被分類為高度重要的警告和訊息;建置的主要步驟。 您通常會使用這個詳細資料層級。
    詳細顯示組建的摘要;錯誤、被分類為高度重要的警告和訊息;所有建置步驟;就一般重要性分類的訊息。
    診斷顯示為組建可用的所有資料。 您可以使用這個詳細資料層級協助偵錯與自訂建置指令碼和其他組建問題的問題。

2017年6月8日 星期四

無法載入檔案或組件 msshrtmi



'/' 應用程式中發生伺服器錯誤。

無法載入檔案或組件 'msshrtmi, Version=2.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 或其相依性的其中之一。 系統找不到指定的檔案。

描述: 在執行目前 Web 要求的過程中發生未處理的例外狀況。請檢閱堆疊追蹤以取得錯誤的詳細資訊,以及在程式碼中產生的位置。

例外狀況詳細資訊: System.IO.FileNotFoundException: 無法載入檔案或組件 'msshrtmi, Version=2.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 或其相依性的其中之一。 系統找不到指定的檔案。

原始程式錯誤:

在執行目前 Web 要求期間,產生未處理的例外狀況。如需有關例外狀況來源與位置的資訊,可以使用下列的例外狀況堆疊追蹤取得。

組件載入追蹤: 下列資訊在確定為何無法載入組件 'msshrtmi, Version=2.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 時是有幫助的。


警告: 組件繫結記錄切換為 OFF。
若要記錄組件繫結失敗,請將登錄值 [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) 設為 1。
注意: 與組件繫結失敗記錄相關的效能會有部分負面影響。
若要關閉此功能,請移除登錄值 [HKLM\Software\Microsoft\Fusion!EnableLog]。

堆疊追蹤:


[FileNotFoundException: 無法載入檔案或組件 'msshrtmi, Version=2.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 或其相依性的其中之一。 系統找不到指定的檔案。]
   Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.InitializeEnvironment() +0
   Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment..cctor() +855

--

[解法]
將 msshrtmi.dll 放入 \bin 中




2017年6月7日 星期三

兩者中都有類型 'ASP.global_asax'





編譯錯誤

描述: 資源編譯無法完成 (錯誤發生於服務要求)。請檢閱下列的特定錯誤詳細資料,並視情況修改您的原始程式碼。

編譯器錯誤訊息:
CS0433:
'c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\dbf3ad59\6642f687\assembly\dl3\1ccd02dd\f1e38fa8_baded201\App_global.asax.DLL'
和    
'c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\dbf3ad59\6642f687\App_global.asax.jvkwiqts.dll'
兩者中都有類型 'ASP.global_asax'

原始程式錯誤:


Microsoft SQL Server 2008 R2 (SP2) - 10.50.4042.0 (X64)   Mar 26 2015 21:18:04  
Copyright (c) Microsoft Corporation  Standard Edition (64-bit) on Windows NT 6.2 (Build 9200: ) 


--
[解法]

刪除
App_global.asax.compiled
App_global.asax.dll
App_global.asax.pdb


2016年10月12日 星期三

ccproj 無法開啟的問題 ( CctProjectNode )



不支援的
這個 Visual Studio 版本無法開啟下列專案。可能是未安裝專案類型,或這個 Visual Studio 版本不支援這些類型。
如需有關啟用這些專案類型或以其他方式移轉資產的詳細資訊,請按一下 [確定] 後查看「移轉報告」中顯示的詳細資料。
- CloudServiceTypeD, "C:\Users\user\Documents\Work\xxx_root\CloudService\CloudServiceTypeD.ccproj"



---------------------------
Microsoft Visual Studio
---------------------------
'Microsoft.Cct.CctProjectNode' 的類型初始設定式發生例外狀況。
---------------------------
確定  
---------------------------


參考
http://stackoverflow.com/questions/39372220/i-get-the-type-initializer-for-microsoft-cct-cctprojectnode-threw-an-exceptio

gacutil -l >yourassemblies.txt  

.txt  檔名可以自訂,在[套件管理器種控台]下指令後,

會生出一個檔案內容表列目前有安裝的套件

搜尋一下,撈到2.9 的

通通刪除(使用執行功能下指令反安裝下列套件)

msiexec /x {8664E001-704C-4EFB-B68D-6A3DEF60BBEE}
msiexec /x {66A4D324-AAB7-3B38-A5D5-A556D5B2AACD}
msiexec /x {7911E2A5-8098-40D4-AFC8-3EA6D4D70168}

msiexec /x {F276920E-ACD4-380C-B621-93A967299859}

完成後,再刪除ComponentModelCache,重新開啟Visual Studio

完成.





2016年9月13日 星期二

NLog TO Azure Table Storage



https://github.com/abkonsta/NLog.Extensions.AzureTableStorage

我裝了這些





NLog.config

去Azure的管理介面拿金鑰選項中的主要連接字串

設定->管理金鑰->主要連接字串




我在Microsoft Azure Storage Explorer先開好了一個Table



Microsoft Azure Storage Explorer





接下來




        private static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();

        public ActionResult Index()
        {
            logger.Debug("Debug open Index");
            logger.Info("Info open Index");
            return View();

        }



好的,跑起來後就可以在 Microsoft Azure Storage Explorer 中看到 Log 



補充說明



Timestamp Time zone is UTC 時間.
LogTimeStamp Time zone is Local 時間.






2016年4月6日 星期三

visual studio cant open cshtml



visual studio cant open cshtml


我的 Visual Studio 2015 突然不能用[方案總管] 開啟 .cshtml檔案

用搜尋的列出檔案後也打不開.cshtml檔案

總會顯示:

---------------------------
Microsoft Visual Studio
---------------------------
作業無法完成。不正確的指標
---------------------------
確定
---------------------------


解答
http://stackoverflow.com/questions/30311355/visual-studio-2015-not-syntax-highlighting-razor-nor-intellisense

清空

C:\Users\小示\AppData\Local\Microsoft\VisualStudio\14.0\ComponentModelCache

2015年11月23日 星期一

Elmah 過濾爬蟲機器人


Elmah 過濾爬蟲機器人

ELMAH filter crawler errors


Global.asax file

void ErrorLog_Filtering(object sender, ExceptionFilterEventArgs e)
{
    if (HttpContext.Current.Request.UserAgent.Contains("bot"))
        e.Dismiss();
}

2015年10月16日 星期五

Azure SendGrid is Paused



使用Azure 綁定 SendGrid 電子郵件服務已有一段時間,

有天突然無發登入SendGrid了,

去Azure介面看只有看到大大的橘色Paused

這時登入Azure帳號的信箱,有收到SendGrid寄來的暫停通知,

裡面有附上重新認證恢復使用的網址,

連回去後帳號就恢復了!

之前建立的銷售郵件資料也都還在,

結案!

--

後續

有開Azure case 回報問題給微軟技術支援工程師

Azure SendGrid被暫止

目前處理中

2015年7月1日 星期三

Azure SQL Database 備份方案的三種策略



Azure SQL Database 備份方案的三種策略
[1]備份方案1
工具
使用 SqlPackage.exe
方法
非同步異地
頻率
使用本地Server的排程,設定三天或五天一次
成本
資料傳輸費用
說明
可撰寫排程程式自動匯出存至本地端,然後需使用時用手動匯入指定DB
[2]備份方案2
工具
使用 SQL Server Management Studio 2012匯入匯出工具DTSWizard.exe
方法
非同步異地
頻率
一次性(臨時有需要可取得及時線上的)、人工處理不可排程
成本
資料傳輸費用
說明
人工手動備份
[3]備份方案3
工具
使用Windows Azure Blob 儲存體服務自動匯出
方法
備份至異地的儲存體
頻率
可自訂日期與執行備份的時間點、保留備份檔的保存期限、
以及可選擇永遠保留至少一個匯出檔案。
成本
Blob 儲存體費用、從 Blob 儲存體匯出至本地時會產生的資料傳輸費用
說明
雲端自動備份
Windows Azure 計費考量
儲存體:費用是根據使用的空間收費,而計算方式採累進費率和備援等級計算。
 
如需詳細資料與最新資訊,請參閱定價詳細資料文章的<資料管理>一節。
資料傳輸:輸入 Windows Azure 的資料傳輸是免費的。 輸出傳輸則必須支付頻寬使用量的費用,計算方式是根據地區特定的累進費率計算。
 
如需詳細資料,請參閱<定價詳細資料>文章的資料傳輸一節。








2015年5月29日 星期五

[SQL] 加總計算項目個數,並用一個暫時的欄位紀錄



[SQL]


  SELECT [GoodItem], [OrderID], COUNT([GoodItem]) AS CountRecords
  FROM [CustomerOrder]
  where [GoodItem] in ('267','853','8003','107','1801','2091','826')
  Group by [GoodItem], [OrderID]



說明:

FROM在 DB.TABLE [CustomerOrder]

where:找出 [GoodItem] 條件符合    ('267','853','8003','107','1801','2091','826')  的資料

COUNT AS:把每個  [GoodItem]  加總計算項目個數,並用一個暫時的欄位CountRecords 紀錄

Group by :然後組合出一張新的結果 [GoodItem]  [OrderID] [CountRecords]



2015年5月20日 星期三

[雜症] Windows Azure msshrtmi.dll



各種無法載入檔案或組件'XXX'或其相依性的其中之一。 試圖載入格式錯誤的程式。

都遇上了T^T


---------------------------

---------------------------
無法載入檔案或組件'XXX'或其相依性的其中之一。 試圖載入格式錯誤的程式。
---------------------------
確定
---------------------------

如果是WindowsForms

通常去改[組態管理員][平台] 再重新編譯即可。


比較常遇到是dll有版本問題(x86,x64),所以出狀況。

如果是WEB,那要去修改IIS的[應用程式集區]

設定應用程式集區識別
  1. 在 [應用程式集區] 功能頁上,從清單選取應用程式集區。
  2. 在 [動作] 窗格中,按一下 [進階設定]







如果是

無法載入檔案或組件 'msshrtmi, Version=2.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 或其相依性的其中之一。 系統找不到指定的檔案。


這次遇到的情形是
Visual Studio 2012 + Azure SDK for .NET 2014 年 4 月 (2.3 版)

C:\Program Files\Microsoft SDKs\Windows Azure\.NET SDK\2012-06\bin\runtimes\base\x64\msshrtmi.dll

C:\Program Files\Microsoft SDKs\Windows Azure\.NET SDK\2012-06\bin\runtimes\base\x86\msshrtmi.dll

於是我將Visual Studio 2012 的Azure SDK版本升版至

Azure SDK for .NET VS 2012 版 2015 年 3 月 (2.5.1 版)


搞定,收工。





2015年3月2日 星期一

Oracle Listener (監聽器) 設定



因為沒有裝VM

所以每次把這台測試環境電腦的Oracle玩爛了,就重裝

win64_11gR2_database_1of2.zip
win64_11gR2_database_2of2.zip  (需要解壓縮在同一個目錄)

重裝太多次之後,老是有刪不乾淨,或是安裝不完全的問題


這次遇到的問題是

Listener無法正確啟動


事前有先試過:
用SQL Plus 可以登入
用帳/密 : scott/tiger 接著select * from emp; 也可以找到14個資料列

(PS.我的主機在區網有固定的IP,如果你的IP是區網自動取得,
       請將你主機的IP,改成固定的!)

接下來需要修改
D:\app\user\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora
(如果你有不能存檔的問題,請使用管理員權限將目錄資料夾唯讀取消,並增加讀寫權限)


# listener.ora Network Configuration File: D:\app\user\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\app\user\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = ORCL
      (ORACLE_HOME = D:\app\user\product\11.2.0\dbhome_1)
      (SID_NAME = ORCL)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
      (PROTOCOL_STACK =
        (PRESENTATION = GIOP)
        (SESSION = RAW)
      )
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 你主機的IP)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = D:\app\user\product\11.2.0\dbhome_1\log





cmd指令:lsnrctl start

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 02-3月 -2015 21:3
2:31

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

正在啟動 tnslsnr: 請稍候...

TNS-12560: TNS:協定介面程式錯誤
 TNS-00530: 協定轉接器錯誤


處理方案是重啟OracleOraDb11g_home1TNSListener

這個的位置在
[控制台]-[系統及安全性]-[系統管理工具]-[服務]

裡面找Oracle開頭,結尾是Listener的服務

將OracleOraDb11g_home1TNSListener停止後,重新啟動

如果你有將[啟動類型]改成[自動]的話,這樣以後開機就會自動啟動。


cmd指令:lsnrctl start

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 02-3月 -2015 21:56:46

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

TNS-01106: 已啟動名稱為 LISTENER 的監聽器





cmd指令:lsnrctl status

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 02-3月 -2015 21:56:53

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

連線至 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=你主機的IP)(PORT=1521)))
監聽器的狀態
------------------------
別名                     LISTENER
版本                     TNSLSNR for 64-bit Windows
啟動日期                 02-3月 -2015 21:56:40
正常運作時間          0 天 0 小時 0 分鐘 12 秒
追蹤層次                 off
安管                        ON: Local OS Authentication
SNMP                     OFF

監聽器參數檔案        
D:\app\user\product\11.2.0\dbhome_1\network\admin\listener.ora

監聽器日誌檔          
d:\app\user\product\11.2.0\dbhome_1\log\diag\tnslsnr\pcname\listener\alert\log.xml

監聽端點摘要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROCipc))
(PROTOCOL_STACK=(PRESENTATION=GIOP)(SESSION=RAW)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=主機的IP)(PORT=1521)))

服務摘要...

服務 "ORCL" 有 1 個執行處理.
  執行處理 "ORCL", 狀態 UNKNOWN, 有 1 個此服務的處理程式...

服務 "PLSExtProc" 有 1 個執行處理.
  執行處理 "PLSExtProc", 狀態 UNKNOWN, 有 1 個此服務的處理程式...

命令順利完成





2015年2月12日 星期四

java.lang.NoClassDefFoundError: net/sf/json/JSONArray



繼上次那篇

JBoss & RESTEasy





這篇可以幫你避免

java.lang.NoClassDefFoundError : net/sf/json/JSONArray

java.lang.NoClassDefFoundError: net/sf/json/JSONArray



在專案中使用 json-lib-2.4 來幫忙物件轉出 json

使用的到的是以下這些

\lib\commons-beanutils.jar
\lib\commons-collections.jar
\lib\commons-lang.jar
\lib\commons-logging.jar
\lib\ezmorph-1.0.6.jar
\lib\json-lib-2.4-jdk15.jar





加到Build Path之後
在WEB-INF資料夾中建立 lib 資料夾
然後把要用到的jar都丟進去lib

接著在pom.xml中加入

<dependency>
    <groupId>net.sf.json-lib</groupId>
    <artifactId>json-lib</artifactId>
    <version>2.4</version>
</dependency>

 這樣就可以開始用

import net.sf.json.JSONArray;




2015年2月8日 星期日

JBoss & RESTEasy



#這篇是翻譯文章,並且補充說明


RESTEasy Hello World Example


開發環境

  • Eclipse Kepler 
  • JBoss 6.x Runtime Server
  • RESTEasy 2.2.1.GA
  • jre7


Download Source Code
Download it – RESTEasy-Hello-World-Example.zip (7 KB)

當把檔案下載回來後


1. Import 進你的專案目錄

2. 找不到這些jar檔嗎?

M2_REPO/org/jboss/resteasy/resteasy-jaxrs/2.2.1.GA/resteasy-jaxrs-2.2.1.GA.jar
M2_REPO/org/jboss/resteasy/jaxrs-api/2.2.1.GA/jaxrs-api-2.2.1.GA.jar
M2_REPO/org/apache/httpcomponents/httpcore/4.0.1/httpcore-4.0.1.jar
M2_REPO/org/apache/httpcomponents/httpclient/4.0.3/httpclient-4.0.3.jar
M2_REPO/commons-codec/commons-codec/1.2/commons-codec-1.2.jar
M2_REPO/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar
M2_REPO/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar
M2_REPO/junit/junit/4.8.2/junit-4.8.2.jar


請至 RESTEasy  下載 RESTEasy 2.2.1.GA 

或到 sourceforge 下載 resteasy-jaxrs-2.2.1.GA-all.zip

然後重新修改你import的Libraries
  •  Java Build Path -> Libraries 
 
重新加入你下載回來的這些jar檔

  • resteasy-jaxrs-2.2.1.GA.jar
  • jaxrs-api-2.2.1.GA.jar
  • httpcore-4.0.1.jar
  • httpclient-4.0.3.jar
  • commons-codec-1.2.jar
  • commons-httpclient-3.1.jar
  • commons-logging-1.0.4.jar
junit-4.8.2.jar 用不到就不用加了


接著
  • Run AS-> Run as Server

選擇 
  • JBoss 6.x Runtime Server

確認你的JBoss work 之後

訪問

Test 1 : http://localhost:8080/RESTfulExample/rest/message/mkyong

Test 2 : http://localhost:8080/RESTfulExample/rest/message/hello%20world


Good Luck!

 



 

評估xxx函式逾時,且需以不安全的方法中止。這可能使目標處理序損毀。

評估xxx函式逾時,且需以不安全的方法中止。這可能使目標處理序損毀。 我選擇直接停用 [啟用屬性評估及其他隱含函式呼叫] --------------------------- Microsoft Visual Studio -------------------...