Это так, что этот должен использоваться только тогда, когда я вхожу в свой индекс в новостях. но если я, например, войду и, должно быть, знал все новости, то вот здесь ошибка вперед.Проверьте, установлено ли значение на RouteConfig.cs
The parameters dictionary contains a null entry for parameter 'id' of non-nullable type 'System.Int32' for method 'System.Web.Mvc.ActionResult Index(System.String, Int32)' in 'MVCSIte.Controllers.NewController'. An optional parameter must be a reference type, a nullable type, or be declared as an optional parameter. Parameternavn: parameters
RouteConfig.cs
Она должна быть такой, чтобы она просто проверка на несколько URL и ID в противном случае он не будет использовать этот.
routes.MapRoute("new", "new/{url}/{id}", new
{
controller = "new",
action = "Index",
url = UrlParameter.Optional,
id = UrlParameter.Optional
});
NyhedController.cs
public class New : Controller
{
DataLinqDB db = new DataLinqDB();
// GET: Nyhed/here shows the single news
public ActionResult Index(string url, int id)
{
NyhedPage model = new NyhedPage();
nyheder nyheden = db.nyheders.FirstOrDefault(x => x.Id == id && x.url == url);
if (nyheden != null)
{
model.NyhedenTitle = new HtmlString(nyheden.title);
model.NyhedenDeck = new HtmlString(nyheden.deck);
model.Tekst = new HtmlString(nyheden.tekst);
}
List<nyheder> NyhedsList = db.nyheders.Where(x => x.Id != id && x.url != url).OrderByDescending(i => i.Id).Take(4).ToList();
model.NyhedsList = NyhedsList.ToList();
return View(model);
}
}
, что я хотел бы меня в том, что, когда я иду на новости, поскольку она показывает все новости, есть этот код:
//Here it shows all the news
public ActionResult Allenyheder()
{
NyhedPage model = new NyhedPage();
List<nyheder> NyhederIndhold = db.nyheders.Take(12).OrderByDescending(i => i.Id).ToList();
model.NyhederIndhold = NyhederIndhold.ToList();
return View(model);
}
Ваше определение маршрута имеет 'controller =" new ",' но контроллер, который вы указали, является 'NyhedController'? И как вы хотите назвать эти методы? –
@StephenMuecke теперь я редактирую его. извините –
Непонятно, что вы просите или ожидаете. Как вы называете эти методы (и только последний параметр в определении маршрута может быть помечен 'UrlParameter.Optional', но поскольку вы, кажется, всегда проходите оба метода, а затем удаляете его из обоих) –