Зависит от модели.Если ваши публикации являются их собственной сущностью и в конечном итоге они сохраняются (в БД) в своей собственной таблице, это может быть правильным способом для них иметь свой собственный контроллер.То же самое с оговорками.Если вы храните оба из них как часть юридического лица Компании, то для них может быть лучше остаться в контроллере Компании.Но мне кажется, что они должны быть отдельными.
Что касается перенаправления между действиями контроллера, вы всегда можете использовать RedirectToAction () для перенаправления внутри того же контроллера.
Вы также можете использовать MVCПроект Futures и их расширения RedirectToAction (), с помощью которых вы также можете перенаправлять между различными контроллерами.
FWIW, я думаю, что если вы редактируете публикацию, которая имеет свои собственные свойства и т. Д., Она принадлежит их собственному объекту и, таким образомим нужно иметь свои собственные модели, контроллеры и последующие виды (в отдельной папке вида в корне видов).
ОБНОВЛЕНИЕ:
Что не так с маршрутом, который выглядит следующим образом:
Создание публикации для компании с {companyId}
/Publication/Create/{companyId}
или
Редактирование публикации с идентификатором {publishingId} и для компании с {companyId}
/Publication/Edit/{companyId}/{publicationId}
или если идентификаторы публикации уникальны независимо от компании
/Publication/Edit/{publicationId}