Генерируйте URL с маршрутизацией URL в веб-формах

РЕДАКТИРОВАТЬ : с одним подзапросом

SELECT *
FROM posts 
WHERE userId IN (
    SELECT 

    CASE 
        WHEN userA = {

РЕДАКТИРОВАТЬ : с одним подзапросом

[110]

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

SELECT *
FROM posts 
WHERE userId IN (SELECT userB FROM friends WHERE userA = {

РЕДАКТИРОВАТЬ : с одним подзапросом

[110]

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

[111]

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

SESSION['userId']}) OR userId IN (SELECT userA FROM friends WHERE userB = {

РЕДАКТИРОВАТЬ : с одним подзапросом

[110]

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

[111]

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

SESSION['userId']});

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

SESSION['userId']} THEN userB ELSE userA END as user FROM friends WHERE userA = {

РЕДАКТИРОВАТЬ : с одним подзапросом

[110]

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

SELECT *
FROM posts 
WHERE userId IN (SELECT userB FROM friends WHERE userA = {

РЕДАКТИРОВАТЬ : с одним подзапросом

[110]

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

[111]

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

SESSION['userId']}) OR userId IN (SELECT userA FROM friends WHERE userB = {

РЕДАКТИРОВАТЬ : с одним подзапросом

[110]

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

[111]

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

SESSION['userId']});

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

SESSION['userId']} OR userB = {

РЕДАКТИРОВАТЬ : с одним подзапросом

[110]

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

SELECT *
FROM posts 
WHERE userId IN (SELECT userB FROM friends WHERE userA = {

РЕДАКТИРОВАТЬ : с одним подзапросом

[110]

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

[111]

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

SESSION['userId']}) OR userId IN (SELECT userA FROM friends WHERE userB = {

РЕДАКТИРОВАТЬ : с одним подзапросом

[110]

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

[111]

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

SESSION['userId']});

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

SESSION['userId']} );

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

SELECT *
FROM posts 
WHERE userId IN (SELECT userB FROM friends WHERE userA = {

РЕДАКТИРОВАТЬ : с одним подзапросом

[110]

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

[111]

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

SESSION['userId']}) OR userId IN (SELECT userA FROM friends WHERE userB = {

РЕДАКТИРОВАТЬ : с одним подзапросом

[110]

СТАРЫЙ ОТВЕТ:

Я ищу лучшее решение, но я думаю, что оно работает с два подзапроса:

[111]

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

SESSION['userId']});

Но, пожалуйста, рассмотрите возможность использования PDO для повышения безопасности

6
задан tshepang 21 May 2014 в 20:14
поделиться

3 ответа

Как Вы говорите, ASP.NET, MVC предлагает Вам ряд вспомогательных методов "инвертировать поиск" RouteTable и генерировать URL для Вас. Я очень еще не играл с этим, но насколько я вижу, что необходимо назвать метод GetVirtualPath на RouteCollection (наиболее вероятный RouteTable. Маршруты). Так что-то как:

Dim routedurl = RouteTable.Routes.GetVirtualPath(context, rvd).VirtualPath

Необходимо передать RequestContext и RouteValueDictionary. RouteValueDictionary содержит параметры маршрута (так в Вашем случае что-то как графство = "Великобритания", Ленг = "EN-ГБ" и т.д. Хитрой частью является RequestContext, поскольку это не часть нормального HttpContext. Можно продвинуть его в HttpContext в IRouteHandler:

requestContext.HttpContext.Items("RequestContext") = requestContext

и затем восстановите его снова в Вашем IHttpHandler (aspx страница) при необходимости:

Dim rvd = 
  New RouteValueDictionary(New With {.country = "UK", .lang = "EN-GB"})
Dim routedurl = 
  RouteTable.Routes.GetVirtualPath(context.Items("RequestContext"), rvd).VirtualPath

Извинения за ответ на вопрос C# в VB, это было просто, что ASP.NET, направляющий сайт, который я должен был вручить, был в VB.NET.

4
ответ дан 10 December 2019 в 00:46
поделиться

Спасибо за ответы. ДЛЯ добавления к этому вот то, что я сделал:

В Global.asax

RouteValueDictionary rvdSiteDefaults 
    = new RouteValueDictionary { { "country", "ca" }, { "lang", "en" } };

Route oneArticle 
    = new Route("{country}/{lang}/articles/a{id}/{title}",
        rvdSiteDefaults,
        rvdConstrainID,
        new ArticleRouteHandler("~/Articles/Details.aspx"));

Routes.Add( "Article", oneArticle);       

Создайте URL из объекта Статьи

public static string CreateUrl(Article a) {
    // Note, Article comes from Database, has properties of ArticleID, Title, etc.
    RouteValueDictionary parameters;

    string routeName = "Article"; // Set in Global.asax

    parameters 
      = new RouteValueDictionary { 
         { "id", a.ArticleID }, 
         { "title", a.Title.CleanUrl() } 
        }; 

CleanUrl () возвращает URL Дружественное имя.

    VirtualPathData vpd = RouteTable.Routes.GetVirtualPath(null, routeName, parameters);

    string url = vpd.VirtualPath; 
    return url; // eg. /ca/en/1/The-Article-Title
}

TaDa!

7
ответ дан 10 December 2019 в 00:46
поделиться

Гиперссылка hl = новая Гиперссылка (); hl. Текст = "щелкает здесь"; hl. NavigateUrl = "~/Forms/Article.aspx"; MostlyAnyControl. Средства управления. Добавьте (hl);

что касается помещения его в списке... любой (1) цикл / выполняет итерации, или (2) Linq к XML.

-1
ответ дан 10 December 2019 в 00:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: