Используйте несколько форм в одном представлении и отправьте их в несколько разных таблиц - PullRequest
1 голос
/ 21 сентября 2019

У меня есть представление, что в этом представлении я хочу передать ему некоторые модели.Я передаю модели как это:

@Html.Partial("_Project", Model.AllProjects)
 @Html.Partial("_Blog", Model.AllBlog)
 @Html.Partial("_Comment", Model.AllComments)

это представление питается от viewModel (HomeMultiViewModel), которая содержит некоторые модели, подобные этой:

 public class HomeMultiViewModel
    {
        public List<Project> AllProjects { get; set; }
        public List<Blog> AllBlog { get; set; }
        public List<Blog> SearchInBlog { get; set; }
        public List<Costumer> AllCostumers { get; set; }
        public List<Comments> AllComments { get; set; }

    }

Кроме них, у меня есть 2 формы вэто мнение, что значения одного из них должны быть отправлены в модель с именем ContactYou, а значения другого должны быть отправлены в имена модели advise.

Это первая форма, на мой взгляд:

<form class="UswithYouForm">
    <input type="tel" class="UswithYouFormInput" placeholder="Phone number.." />
    <button type="submit" class="UswithYouFormButtom">Submit</button>
 </form>

Это второе в этом представлении:

<form class="adviseForm">
    <input type="text" class="form-control" placeholder="Your Name" />
    <input type="tel" class="form-control" placeholder="Phone number" />
    <input type="text" class="form-control" placeholder="Subject" />
    <textarea class="form-control" placeholder="Message..."></textarea>
    <button class="slide__text-link">Send your request!</button>
</form>

И наконец, это мой контроллер для этого представления:

namespace Atawin.Controllers
{
    public class HomeController : Controller
    {
        private readonly ApplicationDbContext _context;
        private readonly IServiceProvider _serviceProvider;
        public HomeController(ApplicationDbContext context, IServiceProvider serviceProvider)
        {
            _context = context;
            _serviceProvider = serviceProvider;
        }
        public IActionResult Index()
        {
            HomeMultiViewModel model = new HomeMultiViewModel();
            model.AllProjects = (from p in _context.projects select p).ToList();
            model.AllBlog = (from b in _context.blogs select b).ToList();
            model.AllCostumers = (from c in _context.costumers select c).ToList();
            model.AllComments = (from com in _context.comments select com).ToList();
            ViewBag.RootPath = "/upload/Norm/";
            return View(model);
        }

        public IActionResult Search(string searchedTxt)
        {
            HomeMultiViewModel model = new HomeMultiViewModel();
            model.AllBlog = (from b in _context.blogs select b).ToList();
            model.AllCostumers = (from c in _context.costumers select c).ToList();
            model.SearchInBlog = (from sb in _context.blogs where sb.Title.Contains(searchedTxt) orderby sb.Id descending select sb).Take(15).ToList();
            ViewBag.RootPath = "/upload/Norm/";
            ViewBag.SearchedWords = searchedTxt;
            return View(model);
        }

        // i want an action here to solve my problem

    }
}

Я на самом деле тростникподобные вопросы на всех сайтах, но я не могу решить свою проблему.Если вам нужно больше, чтобы ответить на этот вопрос, скажите мне, и я пришлю вам тему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...