Asp.net MVC вставляет панель документа в текстовое поле, чтобы прочитать XML-файл рецепта, нажав кнопкуC#

Место общения программистов C#
Ответить
Anonymous
 Asp.net MVC вставляет панель документа в текстовое поле, чтобы прочитать XML-файл рецепта, нажав кнопку

Сообщение Anonymous »

Я новичок в ASP.net MVC и хочу создать веб-приложение с рецептами. В этом приложении я хочу читать XML-файлы со своего компьютера или мобильного телефона. По этой причине я хочу скопировать местоположение файла в текстовый файл и прочитать его после нажатия кнопки отправки.
Мой index.cshtml:

Код: Выделить всё

@model IEnumerable

@{
ViewData["Title"] = "Index";
}

Index



Create New

XML Bestand:


 Create From XML 





@Html.DisplayNameFor(model => model.BeerName)


@Html.DisplayNameFor(model => model.BrewDate)


@Html.DisplayNameFor(model => model.BeerType)


@Html.DisplayNameFor(model => model.Kooktijd)


@Html.DisplayNameFor(model => model.GildelidId)


@Html.DisplayNameFor(model => model.GildeLid)


@Html.DisplayNameFor(model => model.OG)


@Html.DisplayNameFor(model => model.FG)


@Html.DisplayNameFor(model => model.ABV)


@Html.DisplayNameFor(model => model.IBU)





@foreach (var item in Model) {


@Html.DisplayFor(modelItem => item.BeerName)


@Html.DisplayFor(modelItem => item.BrewDate)


@Html.DisplayFor(modelItem => item.BeerType)


@Html.DisplayFor(modelItem => item.Kooktijd)


@Html.DisplayFor(modelItem => item.GildelidId)


@Html.DisplayFor(modelItem => item.GildeLid)


@Html.DisplayFor(modelItem => item.OG)


@Html.DisplayFor(modelItem => item.FG)


@Html.DisplayFor(modelItem => item.ABV)


@Html.DisplayFor(modelItem => item.IBU)


Edit |
Details |
Delete


}



В моем поле ввода есть имя и идентификатор местоположения. С помощью asp-action="CreateFromXML" я хочу создать новый рецепт из этого XML-файла. В моем контроллере есть этот код:

Код: Выделить всё

    //GET:Beers/CreateFromXML
public IActionResult CreateFromXML(IFormCollection form)
{
var yourValue = $('#Locatie').val();
//var value = collection["XMLbestand"];
string Name = form["Name"];
//Viewbag.Name = Name;
var filename = "D:\\OneDrive\\De Roode Toren\\gildewedstrijd\\Rye-Rasp Taz 1.xml";
Bestandlocatie loc = new Bestandlocatie() { Locatie = "XMLbestand" };
XmlDocument doc = new XmlDocument();
doc.Load(filename);
List newbeers = new List();
string name = "";
DateTime date = DateTime.Now;
string brewer = "";
decimal abv = 0;
decimal og = 0;
decimal fg = 0;
int ibu = 0;
int boiltime = 0;
string style = "";

foreach (XmlNode node in doc.DocumentElement.ChildNodes)
{
foreach (XmlNode node1 in node)
{
DbContextOptions options = new DbContextOptions();
if (node1.Name == "NAME")
name = node1.InnerText;
if (node1.Name == "DATE")
date = DateTime.Parse(node1.InnerText);
if (node1.Name == "BREWER")
brewer = node1.InnerText;
if (node1.Name == "EST_ABV")
abv = decimal.Parse(node1.InnerText.Replace(".", ","));
if (node1.Name == "IBU")
ibu = (int)decimal.Parse(node1.InnerText.Replace(".", ","));
if (node1.Name == "EST_OG")
og = decimal.Parse(node1.InnerText.Replace(".", ","));
if (node1.Name == "EST_FG")
fg = decimal.Parse(node1.InnerText.Replace(".", ","));
if (node1.Name == "BOIL_TIME")
ibu = (int)decimal.Parse(node1.InnerText.Replace(".", ","));

if (node1.Name == "STYLE")
{
foreach (XmlNode node2 in node1)
{
if (node2.Name == "NAME")
style = node2.InnerText;
if (node2.Name == "STYLE_LETTER")
style += " (" + node2.InnerText + ")";
}
}
}
}
Beer beer = new Beer()
{
BeerName = name,
ABV = abv,
BeerType = style,
BrewDate = date,
GildeLid = brewer,
GildelidId = 4,
FG = (decimal?)fg,
OG = (decimal?)og,
Kooktijd = boiltime,
IBU = ibu,
};

return View(beer);
}
Код работает. но мне нужно использовать местоположение файла в коде. Могу ли я получить местоположение файла из текстового поля в коде?

Подробнее здесь: https://stackoverflow.com/questions/798 ... le-by-butt
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»