PDA

View Full Version : مبتدی: ارسال Url به Action



phpphp7
چهارشنبه 10 آذر 1395, 00:09 صبح
سلام خسته نباشید

من در کنترلر Home یک اکشن ایجاد کردم به نام Tags

حالا در view ، میخواهم اطلاعات یک تگ <a> رو بفرستم به اکشن Tags

میخوام برای مطالب سایتم ، تگ درست کنم . ولی میخوام دقیقا اینجوری بشه :

mysite.com/Tags/test

میخوام عبارت مثالی test به اکشن Tags ارسال بشه . منتها توسط تگ <a href="" >
یعنی دکمه ای در کار نیست .

مثل لینک زیر :

http://pop-music.ir/tag/%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-%D8%A2%D9%87%D9%86%DA%AF-%D8%A7%D9%85%DB%8C%D8%B1-%DB%8C%DA%AF%D8%A7%D9%86%D9%87



خودم انجامش دادم . عکس :
http://up.vbiran.ir/uploads/5331148045408741615_Untitledss.png

منتها میخوام به جای ?s= ، اسلش بزارم .
به نظر شما باید چیکار کنم ؟

Moien Tajik
چهارشنبه 10 آذر 1395, 14:01 عصر
در مورد Route ها در MVC جستجو کنید ...
http://stackoverflow.com/a/6328758
http://stackoverflow.com/a/6487358

phpphp7
چهارشنبه 10 آذر 1395, 14:21 عصر
در مورد Route ها در MVC جستجو کنید ...
http://stackoverflow.com/a/6328758
http://stackoverflow.com/a/6487358

سلام
مطالعه کردم اما در مورد مبحث من نبود

میخواهم به جای ?s= ، اسلش بزارم .

یعنی اینجوری بشه :

mysite.com/Tags/test

OmMiD_MtWo
سه شنبه 16 آذر 1395, 08:48 صبح
سلام
مطالعه کردم اما در مورد مبحث من نبود

میخواهم به جای ?s= ، اسلش بزارم .

یعنی اینجوری بشه :

mysite.com/Tags/test

اگر بخواید اسلش در url به جای علامت سوال بیوفته، باید متغیر موردنظرتون رو با نام ID نام گذاری کنید و به action بفرستید، یعنی :
public ActionResult Tags(string ID)



تا به صورت پیشفرض در MVC برای اون اسلش درنظرگرفته بشه و بعد هم در سایت با استفاده از تگ a به صورت زیر میتونید به لینک مورد نظر دسترشی داشته باشید:
mysite.com/Tags/test

Black_Hammer
سه شنبه 16 آذر 1395, 13:30 عصر
سلام خسته نباشید

من در کنترلر Home یک اکشن ایجاد کردم به نام Tags

حالا در view ، میخواهم اطلاعات یک تگ <a> رو بفرستم به اکشن Tags

میخوام برای مطالب سایتم ، تگ درست کنم . ولی میخوام دقیقا اینجوری بشه :

mysite.com/Tags/test

میخوام عبارت مثالی test به اکشن Tags ارسال بشه . منتها توسط تگ <a href="" >
یعنی دکمه ای در کار نیست .

مثل لینک زیر :

http://pop-music.ir/tag/%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-%D8%A2%D9%87%D9%86%DA%AF-%D8%A7%D9%85%DB%8C%D8%B1-%DB%8C%DA%AF%D8%A7%D9%86%D9%87



خودم انجامش دادم . عکس :
http://up.vbiran.ir/uploads/5331148045408741615_Untitledss.png

منتها میخوام به جای ?s= ، اسلش بزارم .
به نظر شما باید چیکار کنم ؟
سلام شما می تونید از HTML Helper ها استفاده کنید به این صورت



@HTML.ActionResalte(Tag text, ActionName, ControllerName)



همچنین شما می تونید درباره URL Patern ها در Asp.net mvc توی اینترنت تحقیق کنید .

همچنین شما می تونید تگ a خودتون رو هم به این شکل بنویسید




<a href=/controllerName/ActionName><a>







شما همچنین می تونید پارامتر های اگشن خودتون رو با HTML Helper اینطوری پر کنید .


@Html.Actionresaulte(TagText, ActionName, ControlerName, new{segment1 = value1, segment2 = value2, ...})

phpphp7
چهارشنبه 01 دی 1395, 13:46 عصر
سلام دوستان

توی view گذاشتم :

@{




foreach (var item in Model.Keyword.Split(new char[] { ',' }))
{


<a name="s" style="text-decoration:none" href="/home/Tags/@item">
@item,
</a>

}

}

در کنترلر هم :




public ActionResult Tags(string s, int? page)
{
var q = (from a in db.Tbl_News
where a.Keyword.Contains(s)
select a).OrderByDescending(b => b.ID);


ViewBag.TitleTag = s;
return View("Tags", q.ToList());


}



اما در کنترلر ، string s نال می باشد !