Итак, я работаю над своим первым приложением ASP.NET MVC 3, и мне нужно лишь обработать некоторые данные, экспортированные из чужой системы, а затем развернуть и импортировать их по действию пользователя в систему. и выполнить на нем некоторую проверку ошибок и т. д.
Вот как я пытался решить эту проблему:
У меня есть вид с div:
<div>
<span><b>Recipe Data:</b>
<input type="file" name="uploadFile" />
<input type="submit" value="Load" />
</span>
</div>
и это позволяет мне выбрать файл и затем отправить его. Тогда у меня есть действие контроллера, которое выглядит так:
[HttpPost]
public ActionResult Index(HttpPostedFileBase uploadFile)
{
try
{
// attempt to read the file
}
catch (Exception)
{
throw;
}
}
Итак, когда я использую IE, я могу проверить параметр uploadFile, и он дает мне путь, подобный:
FileName: c:\\Users\\Matt\\Desktop\\TestFiles\\AppleBerry.xml
(это точно полный путь к файлу, который я выбрал)
Но когда я пытаюсь сделать то же самое в FireFox, этот путь удаляется, поэтому uploadFile.FileName - это просто AppleBerry.xml и XDocument.Load
пытается загрузить его из:
C: \ Program Files (x86) \ Общие файлы \ Microsoft Shared \ DevServer \ 10.0 \ AppleBerry.xml
Итак, я почти уверен, что поступаю неправильно и нуждаюсь в руководстве. Мне нужно прочитать этот XML-файл, предпочтительно через XDocument.Load()
, а затем выполнить некоторые проверки и в конечном итоге поместить записи в этом XML-файле в таблицу БД. Единственная часть, с которой у меня проблемы - это путь к файлу. Любая помощь, которую вы можете оказать с этим, будет наиболее ценной.