2009-05-06 2 views
0

В настоящее время я создаю инструмент администрирования для нового проекта, который я хотел бы использовать для извлечения URL-адреса из другого проекта в моем решении.Возврат маршрута действия еще один проект MVC

Хотя контроллер продукта не существует в проекте, с которого я его вызываю, я хотел бы получить его из первого проекта.

Возможно ли это, или мне нужно создать какой-то вспомогательный метод в первом проекте ?!

Большое спасибо заранее.

Обновление для ясности

Например, допустим, что я строю генератор карты сайта. Скажем, у меня есть маршрут в моем первом проекте:

routes.MapRoute(
    "Product", 
    "products/{Title}-{Id}", 
    new { controller = "Product", action = "Details" } 
); 

И давайте говорить, что у меня есть продукт с названием «Buzz Cola» с идентификатором 8. Это будет генерировать URL:

products/buzz_cola-8 (title has been cleaned, but constraints are not shown here) 

Таким образом, в своем втором проекте, нет «продукта» маршрут, и нет контроллера продукта, но я хотел бы создать в функцию, которая будет делать что-то вроде этого:

IEnumerable<ProductInfo> products = MyServiceLayer.GetAllProducts(); 
List<string> productUrls 
foreach(ProductInfo productInfo in products) 
{ 
    productUrls.Add(
    FirstProject.Action("Details", "Product", new { Title = CleanTitle(productInfo.Title), Id = ProductInfo.Id }); 
); 
} 

на конец этого, productUr Ls будет содержать что-то вроде:

products/slurm_cola-1 
products/hotdogs-2 
products/squishy-3 
products/buzz_cola-8 

ответ

0

вы можете создать контроллер, который наследуется от контроллера во втором проекте

+0

я потерял. Как это поможет мне создать URL-адрес из первого проекта? –

+0

Что вы подразумеваете под 'retrieve url'? – 2009-05-06 11:55:04

+0

Aouida, я уточнил вопрос немного лучше. Спасибо. –