2014-03-28 92 views
0

我們有讀取本地文件的XML文件(應用程序即C:\ TEMP \進口應用程序許可

當我們在運行Visual Studio中的應用程序,在調試模式下,文件是normaly閱讀,但當我們部署和安裝應用程序,它不讀取,並給出沒有錯誤,也不例外。

所有這一切發生在Windows下8.1

有人已經發現過這種情況。

xmlSerializer = new XmlSerializer(typeof(List<Common.CCeEntityClientLibrary.Entities.Produto>), 
                new XmlRootAttribute("Produtos")); 
List<Common.CCeEntityClientLibrary.Entities.Produto> lstProducts; 
using (var fileStream = new FileStream(fullFileName, FileMode.Open, FileAccess.Read, FileShare.Read)) 
{ 
    lstProducts = 
     (List<Common.CCeEntityClientLibrary.Entities.Produto>) 
     xmlSerializer.Deserialize(fileStream); 
} 

更新:

catch (Exception ex) 
{ 
    var stringBuilder = new StringBuilder(); 

    stringBuilder.AppendLine("Não foi possível realizar a importação do o arquivo '{0}' através do método '{1}'"); 

    stringBuilder.AppendLine("Descrição: {2}"); 

    Common.CCeCommonLibrary.Errors.EventLogManager.WriteEventLog(
     string.Format(stringBuilder.ToString(), fileName, 
         System.Reflection.MethodBase.GetCurrentMethod().Name, ex.Message)); 
} 

這個地區是被記錄的錯誤,不發生

+0

當您作爲adimnstator運行時會發生嗎? – RadioSpace

+0

你可以發佈正在閱讀的代碼嗎? – Jonesopolis

+0

是的,我們以管理員身份運行。我發佈了一部分代碼。 –

回答

1

如果它不拋出一個異常,這意味着它找到的文件,並打開它。 XmlSerializer可能會遇到不同於期望的XML。檢查它正在查看的文件以確保XML是正確的。

另一種選擇是EventLogManager不在該環境中工作,並且出現錯誤。你可以暫時移除異常處理,看看它是否爆炸。

+0

你是對的,XML是無效的,並沒有錯誤處理。很感謝。 –