Stack Overflow на русском Asked on August 7, 2020
Изучаю книгу по ASP.Net MVC 4. Проект создаваемый средой VS в книге немного отличается от моего так как устарел. По книжной инструкции я должен добавить таблицу стилей добавив строку:
<link rel="stylesheet" type="text/css" href="~/Content/Site.css" />
Но перепробовав все известные мне варианты таблица остается невидимой.
@model WebApplication1.Models.FirstModel
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>RsvpForm</title>
<link rel="stylesheet" type="text/css" href="~/Content/Site.css" />
<link rel="stylesheet" type="text/css" href=@Href("~/Content/Site.css") />
<link rel="stylesheet" type="text/css" [email protected]("~/Content/Site.css") />
</head>
<body>
@using (Html.BeginForm())
{
@Html.ValidationSummary()
<p>Your name: @Html.TextBoxFor(x => x.Name) </p>
<p>Your email: @Html.TextBoxFor(x => x.Email)</p>
<p>Your phone: @Html.TextBoxFor(x => x.Phone)</p>
<p>
Will you attend?
@Html.DropDownListFor(x => x.WillAttend, new[] {
new SelectListItem() {Text = "Yes, I'll be there", Value = bool.TrueString},
new SelectListItem() {Text = "No, I can't come", Value = bool.FalseString}
}, "Choose an option")
</p>
<input type="submit" value="Submit RSVP" />
}
</body>
</html>
Так выглядит обозреватель:
Так выглядит окно браузера:
По умолчанию статические файлы хранятся в папке wwwroot.
Если вы хотите указать свою папку, вы должны переопределить путь в файле Program.cs Для этого вам необходимо добавить .UseWebRoot("Content")
.
Выглядит примерно так:
public class Program
{
public static void Main(string[] args)
{
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseWebRoot("Content")
.Build();
}
После этого вы можетк обращаться к статическим файлам, только теперь они будут браться из папки Content, а не из wwwroot.
Answered by Дмитрий on August 7, 2020
В файле Startup.cs нужно подключить статику:
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseStaticFiles();
}
А, требуется ASP.NET MVC 4, не сразу заметил. Но скорее всего там так же.
Answered by Make Makeluv on August 7, 2020
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP