我有标签助手的问题.我想要做的就是创建一个将数据发布到控制器的表单 - 基本足够我想,但它在我的项目中不起作用.
我使用默认设置创建了一个全新的asp.net核心Web应用程序,它在那里工作,但我的项目拒绝识别标签并采取相应的行动.值得注意的是,标记不会突出显示相同或在悬停时提供信息,因此一些参考或基本缺失,任何人都可以建议.
全部,我只是尝试从加载的.config文件中读取自定义值到MVC项目中.
所以我在添加的.config文件中设置了如下所示的值:
"AppSettings": {
"Title": "Mobile Site"
}
Run Code Online (Sandbox Code Playgroud)
我做了一个基本控制器来设置值
public abstract class ControllerBase : Controller
{
protected Models.AppSettings _appSettings;
private IConfiguration _config;
public ControllerBase(IConfiguration config)
{
_config = config;
_appSettings = new Models.AppSettings();
_appSettings.SiteTitle = _config.GetSection("AppSettings").GetSection("Title").Value;
ViewBag.Settings = _appSettings;
}
}
Run Code Online (Sandbox Code Playgroud)
我也可以确认这是有效的.如果我只是在我的一个动作中设置viewbag数据,则会触发这些值.
public class AppController : ControllerBase
{
public AppController(IConfiguration config) : base(config)
{
}
// GET: /<controller>/
public IActionResult Index()
{
ViewData["Settings"] = _appSettings;
return View("Index");
}
Run Code Online (Sandbox Code Playgroud)
我可以通过这种方式访问视图中的值,但是因为我当前正在添加的值只是网站标题的内容(所以我可以在一个简单的.config文件中配置这些内容)我想要像网站标题这样的东西传递给每个动作,而不必每次都为每一个动作专门传递它.
我尝试按照视频中的设置跟踪显示此工作的视频:
@{
ViewData["Logo"] = "~/img/bird.png";
ViewData["Icon"] = "~/img/logo.ico";
var Settings = …Run Code Online (Sandbox Code Playgroud)