Net Core MVC:当前上下文中不存在名称会话

问题描述 投票:2回答:1

我在最后一行收到错误。我该如何解决这个问题?试图将Net 4.6.2项目转换为MVC Net Core。

Last Line Error: Name Session does not exist in Current Context.

public class TransferPropertyOwnershipController : Controller
{
  public ActionResult GetNewOwnerRecord(int ownerID, int propertyID)
    {
        OwnerManager ownerManager = new OwnerManager();
        var newOwner = ownerManager.Get(ownerID, true);

        PropertyOwnerRoleViewModel newPropertyOwnerRoleViewModel = new PropertyOwnerRoleViewModel();
        newPropertyOwnerRoleViewModel.OwnerID = newOwner.OwnerID;
        newOwner.Address = new Model.Address();
        newPropertyOwnerRoleViewModel.Owner = newOwner;
        newPropertyOwnerRoleViewModel.IsPrimaryOwner = false;
        newPropertyOwnerRoleViewModel.OwnershipPercentage = 0;
        newPropertyOwnerRoleViewModel.PropertyID = propertyID;

        IQueryable<PropertyOwnerRoleViewModel> currentOwnersResult = Session[_currentOwnersResult] as IQueryable<PropertyOwnerRoleViewModel>;

建议的解决方案:

1号

HttpContext.Session.GetString(_currentOwnersResult]) 

Error Text: 'ISession' does not contain a definition for 'GetString' and no accessible extension method 'GetString' accepting a first argument of type 'ISession' could be found (are you missing a using directive or an assembly reference?)

2号

IQueryable<PropertyOwnerRoleViewModel> currentOwnersResult = HttpContext.Current.Session(_currentOwnersResult]) as IQueryable<PropertyOwnerRoleViewModel>;

Error Text: 'HttpContext' does not contain a definition for 'Current' and no accessible extension method 'Current' accepting a first argument of type 'HttpContext' could be found (are you missing a using directive or an assembly reference?)

资源:

试图利用这个解决方案,但有问题。 'Session' does not exist in the current context

c# asp.net-core .net-core asp.net-core-mvc .net-core-2.0
1个回答
2
投票

你需要在startup.cs中使用add service

 public void ConfigureServices(IServiceCollection services)
    {
      ....
   services.AddSession(options =>
        {

        });
....
   }

    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
.....
        app.UseSession();
....
    }
© www.soinside.com 2019 - 2024. All rights reserved.