Как правильно вернуть результат, чтобы я мог получить к нему доступ из представления?

#c# #episerver

Вопрос:

Я пытаюсь создать пользовательский отчет в Центре отчетов EPiServer, чтобы отобразить таблицу всех пользователей.

Я создал модель представления и пытаюсь заполнить переменную с именем UserStore:

 using EPiServer.Cms.UI.AspNetIdentity; using Microsoft.AspNet.Identity.EntityFramework;  namespace WebProject.Site.Models.ViewModels {  public class UsersReportViewModel  {  UserStorelt;ApplicationUsergt; userStore = new UserStorelt;ApplicationUsergt;(new IdentityDbContext("EPiServerDB"));   return userStore;  } }  

Я хотел бы иметь доступ к нему с моей точки зрения, вот так:

 @model UsersReportViewModel   @{  Layout = null;  }  lt;div class="users-table"gt;@Model.userStore;lt;/divgt;  

В настоящее время я получаю две ошибки:

  1. в ViewModel, где написано return UserStore;

Имя UserStore не существует в текущем контексте.

  1. в представлении:

UsersReportViewModel.UserStore недоступен из-за его уровня защиты

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

Комментарии:

1. Это недоступно, потому что это не общедоступно. Его не существует, потому что это не работа классов. Однако вы можете вернуть значение в getter атрибуте, но не так

Ответ №1:

  1. Это не публичное место, так что вы никак не можете его получить. Добавьте public модификатор доступа в начало, чтобы получить к нему доступ.

2)Доступ/ установка значения, такого как

 public UserStorelt;ApplicationUsergt; userStore {  get{  if(this.value == null){  this.value = new UserStorelt;ApplicationUsergt;   (new IdentityDbContext("EPiServerDB"));   return this.value;  }  else  return this.value;  } }