每次我尝试将某些内容保存到创建的XML文档中时,我所使用的路径始终存在错误。 下面是代码:XML dosent工作的路径
public string ToXml<T>(T obj, string path)
{
var saveToXmlPath = Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location), path);
using (var stringWriter = new StreamWriter((saveToXmlPath)))
{
var xmlSerializer = new XmlSerializer(typeof(ObservableCollection<object>));
xmlSerializer.Serialize(stringWriter, obj);
return stringWriter.ToString();
}
}
public Constructor()
{
var temp = new ObservableCollection<Model> {
new Model { ID = 1, Name = "Name1" },
new Model { ID = 2, Name = "Name2" },
new Model { ID = 3, Name = "Name3" } };
ToXml(temp, @"Common\Assets\XML\XmlFile.xml");
}
它不停地说,该道路是错误的,不断添加/调试/大的路径。
Assembly.GetEntryAssembly()。的值是什么? –
根据您在另一个答案中的评论,程序集返回的路径是'C:\\ Users \\ UserName \\ Documents \\ Visual Studio 2015 \\ Projects \\ SolutionName \\ ProjectName \\ bin \\ Debug \\ '这是正确的。当Visual Studio编译你的应用程序时,它会把它放到'bin'目录中,然后放到配置的子目录中,在这里是'debug'。这是实际编译的.exe所运行的位置。您希望在哪里尝试写入文件? –
我期望它将文件写入到我创建xml文档的位置。 – Micsto