با سلام
می خواستم برای هر مقاله یک آدرس یونیک و دستی داشته باشم. برای همین اومدم توی دیتابیس یک فیلد درست کردم به نام ArticleURL / حالا می خوام وقتی دارم مقاله رو می نویسم یک رشته رو در دیتابیس ذخیره کنم تا در روتینگ MVC به جای آی دی مقاله یا ... نمایش بده
اما هر کاری کردم نشد
اینم کنترلرم
[Route("{ArticleURL}")] public ActionResult ArticlDetails(int? id,Article article ) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } article = db.Article.Find(id); if (article == null) { return HttpNotFound(); } return View(article); }
دوستان ممنون میشم کمک کنید
در Rout.Config صفت Rout رو فعال کردید ؟
سلام
اون کار رو قبلش انجام دادم، ولی جز ای دی جدول نمیتونم چیز دیگرو توی روتینگ وارد کتم
الان به این شکل {id} درست کار میکنه
ولی وقتی میزنم }articletitle} یا هر فیلد دیگه، نمیشناسه
شما Rout رو به صورت {ArticleURL}
در نظر گرفتید
پس ورودی متد باید حتما string با همین نام باشد مثل زیر
[Route("{ArticleURL}")] public ActionResult ArticlDetails(string ArticleURL) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } article = db.Article.FirsOrDefault(a=>a.Url==ArticleURL); if (article == null) { return HttpNotFound(); } return View(article); }
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)