发布xbap后发生System.Reflection.TargetInvocationException

时间:2018-01-04 09:15:55

标签: c# xml wpf publish xbap

最近我开始学习C#并在发布后遇到了我的WPF应用程序的问题。

首先,让我解释一下应用程序应该做什么:读取xml文件" testxml.xml",并在ListBox中写出给出的名称。 xml-File位于\ myProject \ bin \ Debug。

我的代码:

public partial class Page1 : Page
        {
        private string path = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + @"\testxml.xml";
        List myList = new List();

public Page1() { InitializeComponent(); ReadXML(path, myList,ListBox1); } public static void ReadXML(string path, List<TestXML> myList, ListBox ListBox) { if (File.Exists(path)) { XmlSerializer deserializer = new XmlSerializer(typeof(List<TestXML>)); TextReader reader = new StreamReader(path); object obj = deserializer.Deserialize(reader); myList = (List<TestXML>) obj; reader.Close(); } for (int i = 0; i < myList.Count; i++) { ListBox.Items.Add(myList[i].Name); } } }

这在调试模式下工作正常。 所以,我试图发布它。因此,我已将xml文件包含在我的项目中并更改了其设置&#34; Build Action&#34;到&#34;内容&#34;和&#34;更改为输出目录&#34;到&#34;始终复制&#34;。此外,我改变了发布状态&#34;来自&#34;数据文件&#34;到&#34;包括&#34;在我的项目属性中。我通过发布向导将它发布到&#34; C:\ user \&#34;并选择&#34;从CD-ROM或DVD-ROM&#34;。

这给了我一个xbap-File和一个&#34;应用程序文件&#34; -Folder in&#34; C:\ users \&#34;。 xml文件位于&#34; \ Application Files \ MyProject_1_0_0_x \ bin \ Debug&#34;下。但是当我执行xbap-File时,它会给我一个以

开头的巨大错误

&#34; System.Reflection.TargetInvocationException:调用目标抛出了异常。&#34;

到目前为止,我的建议是xml文件的目录,在发布后可能无法正常工作。什么是正确的目录? 还是我还有另一个错误?

非常感谢任何帮助!

0 个答案:

没有答案