Questions tagged «viewmodel»

视图模型或观点框架是定义要在体系结构构建中使用的一组一致视图的框架。视图是从一组相关关注点的角度对整个系统的表示。

13
什么是MVC中的ViewModel?
我是ASP.NET MVC的新手。我在理解ViewModel的目的时遇到了问题。 什么是ViewModel?为什么我们需要ASP.NET MVC应用程序的ViewModel? 如果我有一个很好的例子说明它的工作和解释,那就更好了。

8
忽略使用Automapper映射一个属性
我正在使用Automapper,并且有以下情况:类OrderModel具有一个不在数据库中的名为“ ProductName”的属性。因此,当我尝试使用以下方法进行映射时: Mapper.CreateMap<OrderModel, Orders>(); 它产生一个异常: “未映射Project.ViewModels.OrderModel上的以下1个属性:'ProductName' 我已经在AutoMapper的Wiki for Projections中阅读了相反的情况(多余的属性在目标上,而不是在源中,这实际上是我的情况) 如何避免自动映射器对此属性进行映射?

3
AndroidViewModel与ViewModel
随着Android Architecture Components库的引入,引入了几个新类,包括AndroidViewModel和ViewModel。但是,我很难弄清楚这两个类之间的区别。该文档简要描述AndroidViewModel如下: 应用程序上下文感知 ViewModel 我很简短,但是这意味着什么呢?我们什么时候应该选择使用AndroidViewModelover ViewModel,反之亦然?

14
无法解析AppCompatActivity上的符号ViewModelProviders
嘿,我正在尝试使ViewModel正常工作,但是到目前为止还没有运气。Android Studio显示错误Cannot resolve symbol 'ViewModelProviders'。 我在此主题上发现的所有其他问题都已纠正extends Activity为extends AppCompatActivity,但我正在扩展正确的问题。不确定我缺少什么... 我的代码基于此YouTube视频 MainActivity.java public class MainActivity extends AppCompatActivity implements TileAdapter.TileAdapterOnClickHandler { private BaseViewModel viewModel; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //set Toolbar Toolbar myToolbar = findViewById(R.id.toolbar); setSupportActionBar(myToolbar); //initialize viewModel viewModel = ViewModelProviders.of(this).get(BaseViewModel.class); BaseViewModel.java public class BaseViewModel extends ViewModel { private Movie[] …

9
Android ViewModel附加参数
AndroidViewModel除了Application上下文,是否有办法将其他参数传递给我的自定义构造函数。例: public class MyViewModel extends AndroidViewModel { private final LiveData<List<MyObject>> myObjectList; private AppDatabase appDatabase; public MyViewModel(Application application, String param) { super(application); appDatabase = AppDatabase.getDatabase(this.getApplication()); myObjectList = appDatabase.myOjectModel().getMyObjectByParam(param); } } 当我想使用我的自定义ViewModel类时,在片段中使用以下代码: MyViewModel myViewModel = ViewModelProvider.of(this).get(MyViewModel.class) 所以我不知道如何将其他参数传递String param给我的自定义ViewModel。我只能传递应用程序上下文,而不能传递其他参数。我将非常感谢您的帮助。谢谢。 编辑:我添加了一些代码。我希望现在会更好。

8
DTO = ViewModel?
我正在使用NHibernate持久化域对象。为简单起见,我将ASP.NET MVC项目用作表示层和服务层。 我想从控制器类中以XML返回我的域对象。在阅读了一些有关Stack Overflow的文章之后,我收集了DTO。但是,我也遇到过有关ViewModel的帖子。 我的问题:数据传输对象和ViewModel是同一件事吗?还是ViewModel是DTO的一种子模式?

5
如何从后台服务和更新UI更新ViewModel的LiveData
最近,我正在探索Google最近引入的Android体系结构。从文档中我发现: public class MyViewModel extends ViewModel { private MutableLiveData<List<User>> users; public LiveData<List<User>> getUsers() { if (users == null) { users = new MutableLiveData<List<Users>>(); loadUsers(); } return users; } private void loadUsers() { // do async operation to fetch users } } 活动可以访问此列表,如下所示: public class MyActivity extends AppCompatActivity { public void …

5
ASP.NET MVC模型与ViewModel
好的,我一直在听有关MS的ASP.NET MVC的“ ViewModels”讨论。 现在,这打算成为一种特定的模型,对吗?不是特定类型的视图。 据我了解,这是一种模型,其特定目的是与View进行交互?或类似的东西? 一些澄清将不胜感激。

12
ASP MVC 3在一个视图中包含两个模型
我有2个型号: public class Person { public int PersonID { get; set; } public string PersonName { get; set; } } public class Order { public int OrderID { get; set; } public int TotalSum { get; set; } } 我想在SINGLE视图中编辑两个类的对象,因此需要以下内容: @model _try2models.Models.Person @model _try2models.Models.Order @using(Html.BeginForm()) { @Html.EditorFor(x => x.PersonID) @Html.EditorFor(x …

4
如何在POST操作中将视图模型映射回域模型?
互联网上有关使用ViewModels和Automapper的每篇文章都提供了“ Controller-> View”方向映射的指南。您将域模型与所有选择列表一起放入一个专用的ViewModel中,并将其传递给视图。很好。 该视图具有一个表单,最终我们处于POST操作中。在这里,所有的Model Binders和另一个[显然]的View Model [显然]至少在命名约定的一部分方面与原始ViewModel有关,这显然是为了绑定和验证。 您如何将其映射到您的域模型? 让它成为一个插入动作,我们可以使用相同的Automapper。但是,如果这是更新操作,该怎么办?我们必须从存储库中检索域实体,根据ViewModel中的值更新其属性,然后将其保存到存储库中。 附录1(2010年2月9日):有时,仅分配Model的属性是不够的。应该根据视图模型的值对域模型采取一些措施。即,应在域模型上调用某些方法。可能应该在控制器和域之间存在一种应用程序服务层,以便处理视图模型... 如何组织此代码以及将其放置在何处以实现以下目标? 保持控制器薄 荣誉SoC实践 遵循领域驱动设计原则 干燥 未完待续 ...

3
为什么从Razor View接收POST请求时,我得到的是null而不是空字符串?
我以前没有值时会收到一个空字符串: [HttpPost] public ActionResult Add(string text) { // text is "" when there's no value provided by user } 但是现在我通过一个模型 [HttpPost] public ActionResult Add(SomeModel Model) { // model.Text is null when there's no value provided by user } 所以我必须使用?? ""运算符。 为什么会这样呢?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.