是否可以为泛型类型创建模型绑定器?例如,如果我有一个类型
public class MyType<T>
Run Code Online (Sandbox Code Playgroud)
有没有办法创建一个适用于任何类型的MyType的自定义模型绑定器?
谢谢,内森
我有一个类设置,看起来像这样:
public abstract class Parent
{
public virtual bool IsDeleted { get; set; }
}
public class Child : Parent
{
}
public class Other
{
public virtual ICollection<Child> Children { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
Child被映射为Parent的join-subclass.Childen被映射为多对一包.这个包有一个名为SoftDeletableFilter的过滤器.过滤器映射如下所示:
<filter-def name="SoftDeleteableFilter" condition="(IsDeleted = 0 or IsDeleted is null)" />
Run Code Online (Sandbox Code Playgroud)
问题是当加载Other.Children时,过滤器将应用于Child表而不是父表.有没有办法告诉NHibernate将过滤器应用于父类?
编辑:这是父映射:
<class name="Parent">
<id ..
<property name="IsDeleted" type="System.Boolean">
<column name="IsDeleted" />
</property>
<joined-subclass name="Child">
<key>
<column name="ParentId" />
</key>
...
</joined-subclass>
</class>
Run Code Online (Sandbox Code Playgroud) 我想在Visual Studio 2008上下文菜单中添加一个项目,确切地说ASP.NET MVC项目在上下文菜单中有"添加视图"或"添加控制器"项.我怎么做到这一点?我必须写一个加载项吗?
谢谢,内森
我将IIS7中的默认网站绑定到ASP.NET应用程序.此应用程序使用ASP.NET状态服务器来存储会话数据.我想在这个网站上添加一个额外的ASP.NET MVC应用程序.是否可以使用状态服务器在这两个应用程序之间共享会话?我已经读过有很多方法可以在SQL Server中存储会话数据,但我找不到任何关于使用状态服务器执行此操作的文档.
谢谢,内森
我想要一个配置,我的构建服务器运行一个NUnit测试,打开并驱动远程机器上的浏览器.实现这一目标的最佳方法是什么?
在Selenium 1中很容易做到,因为java代理服务器位于测试和浏览器之间.在Selenium 2中,您的测试直接与浏览器通信(至少在IE和Firefox中).
有没有办法做到这一点?可能有WCF服务或其他什么?
以下设置有什么问题?AutoPersistanceModel上的Where过滤器似乎不起作用,并且表名约定似乎也不起作用.我经常得到的错误是"命名空间'urn:nhibernate-mapping-2.2'中的元素'class'在命名空间'urn:nhibernate-mapping-2.2'中有无效的子元素'property'.预期的可能元素列表:命名空间'urn:nhibernate-mapping-2.2'中的'meta,jcs-cache,cache,id,composite-id'." 这是我的代码:
public ISessionFactory BuildSessionFactory()
{
return Fluently.Configure()
.Database(
OracleConfiguration.Oracle9.ConnectionString(
c => c.FromConnectionStringWithKey("ConnectionString")))
.Mappings(m =>
{
m.AutoMappings.Add(GetAutoPersistanceModel);
m.FluentMappings.AddFromAssembly(Assembly.GetExecutingAssembly());
})
.BuildSessionFactory();
}
public AutoPersistenceModel GetAutoPersistanceModel()
{
return AutoPersistenceModel.MapEntitiesFromAssemblyOf<User>()
.Where(type => type.IsClass && !type.IsAbstract && type.Namespace == "Some.Namespace")
.ConventionDiscovery.Add<IConvention>(
Table.Is(x => "tbl" + x.EntityType.Name.Pluralize())
);
}
Run Code Online (Sandbox Code Playgroud) 这是我的要求:
我知道Oracle实体框架提供程序会支持所有这些,但我被告知制作自定义映射并不容易.
你会建议什么?