I have some global information (Company name, street, phone, …) stored in a table "CompInfo". This table has only one entry and has no relationship to other tables.
Now I need this information in a view to generate, i.e. offers. I tried to add this data in the controller, but I don't know how I can send this info to my view.
Here is my controller:
public async Task<IActionResult> Offer(int qry_offer)
{
ViewData["Message"] = "Offer";
var x412Context = _context.Offer
.Where(m => m.Id == qry_offer);
x412Context = x412Context
.Include(o => o.Kunde)
.Include(o => o.Mandant)
.Include(m => m.OfferPos)
.ThenInclude(m => m.Ust)
;
return View(await x412Context.ToListAsync());
}
First I add the following code
var Comp_Info = _context.CompInfo
.Where(m => m.Id == 1);
With breakpoints and debugging I see that Comp_Info has the information I require. But I don´t know how to get this info to my view.
I tried
ViewData["street"] = Comp_Info.street;
But this doesn't work.
Does anyone have an idea how I can transmit the data to the view?
You can return a viewmodel in your Offer method that looks like this :
and in your controller initilize the FooVm like this:
and then in your Offer Method you return View(vm);
then your Offer.cshtml will look something like :