小编Bas*_*Bas的帖子

在加载时未选择多个选择selectedOptions的Knockout

我正在为用户创建编辑表单,默认情况下不会在多选中选择用户的角色.

有两个应用程序角色:"管理员"和"主持人".示例用户具有1个角色"Administrator".默认情况下不选择此项.

http://jsfiddle.net/jgT8s/4/

HTML:

<form data-bind="with: user">
    <select id="selectRoles"
        data-bind="options: $root.allRoles, selectedOptions: Roles, optionsText: 'Name', optionsValue: 'Id'"
        multiple="true"
        size="5">
    </select>
</form>
Run Code Online (Sandbox Code Playgroud)

JS:

var User = function () {
    var self = this;

    self.Id = ko.observable(1337);
    self.Username = ko.observable('pietpaulusma');
    self.Roles = ko.observableArray([{ Id: 1, Name: 'Administrator' }]);
};

function UserViewModel() {
    var self = this;

    self.user = ko.observable(new User());
    self.allRoles = ko.observableArray([{ Id: 1, Name: 'Administrator' }, { Id: 2, Name: 'Moderator' }]);
}

ko.applyBindings(new UserViewModel());
Run Code Online (Sandbox Code Playgroud)

UPDATE 创建了dependentObservable并将其映射到selectedOptions

self.RoleIds = ko.dependentObservable(function …
Run Code Online (Sandbox Code Playgroud)

knockout.js

6
推荐指数
1
解决办法
6276
查看次数

通过代码nhibernate 3.2的OneToOne映射

我正在尝试升级项目并使用构建代码映射器.

我有2个实体:

public class Person {
 public virtual int Id { get; set; }
 public virtual User User { get; set; }
}

public class User {
 public virtual int Id { get; set; }
 public virtual User Person { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

数据库结构如下:

table: users, fields: id
table: people, fields: id, userId
Run Code Online (Sandbox Code Playgroud)

使用FluentNHibernate我可以像这样映射它:

public class UserMap : ClassMap<User> {
 public UserMap() {
  Id(x => x.Id).GeneratedBy.Identity();
  HasOne(x => x.Person).PropertyRef("User").Not.LazyLoad();
 }
}

public class PersonMap : ClassMap<Person> {
 public PersonMap() …
Run Code Online (Sandbox Code Playgroud)

nhibernate

4
推荐指数
1
解决办法
3221
查看次数

标签 统计

knockout.js ×1

nhibernate ×1