小编Dan*_*ing的帖子

FluentNHibernate或端口到NHibernate的代码映射

我有几个项目使用NH和FNH生成映射(一些Fluent一些Automapped).我仍然需要一些bug和缺少的功能,但似乎FNH可能因为集成到NHibernate中的代码映射而死亡.

问题:有助于FNH或将映射迁移到代码映射或confORM并修复问题/实现功能吗?

nhibernate nhibernate-mapping fluent-nhibernate nhibernate-mapping-by-code fluent-nhibernate-mapping

7
推荐指数
2
解决办法
2351
查看次数

DTO(linq2sql)和Class对象之间的混淆!

我已成功使用linq2sql和linq DTO(由linq2sql创建的类)....

我很困惑,我有更新旧应用程序的任务,我可以看到我的DTO将如何应用...运输日期

我正在使用存储库模式,所以我通过linq2sql dtos将数据从存储库传递到服务...一旦我在服务层(这基本上是我的业务逻辑),那么我需要传递类对象..

这些类对象基本上是dtos的镜像(或多或少) - 在某些地方有一些变化但通常是相同的..

所以回到手头的问题! - 这是一个好的做法,只使用dtos将数据从存储库传输到服务层......一旦在服务层(业务逻辑),我应该将所有我的dtos映射到那里的类对象计数器部分(当然使用automapper! !)

我的另一种选择是继续使用类似于对象的DTOS并将它们从方法传递到方法以及作为返回类型等,但我觉得这是不好的做法,我继续围着圈子想知道我应该应用哪种方法?

任何帮助真的很感激

谢谢

c# dto repository-pattern automapper linq-to-sql

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

缓存控制:我不明白“必须理解”

我不明白must-understandHTTPCache-Control标头的指令。有哪些示例说明何时使用此功能,以及服务器可能使用缓存可能理解或不理解的哪种状态代码?

来自 MDN 的文档

响应must-understand指令指示缓存仅在根据状态代码了解缓存要求时才应存储响应。

must-understandno-store应该与后备行为结合起来。

Cache-Control: must-understand, no-store
Run Code Online (Sandbox Code Playgroud)

如果缓存不支持must-understand,它将被忽略。如果no-store也存在,则不存储响应。

如果缓存支持must-understand,它会根据其状态代码来存储响应并了解缓存要求。

RFC 9111中也对其进行了正式描述:

必须理解的响应指令将响应的缓存限制为能够理解并符合该响应状态代码要求的缓存。

包含必须理解指令的响应还应该包含 no-store 指令。当实现“必须理解”指令的缓存收到包含该指令的响应时,如果缓存理解并实现了状态代码的缓存要求,则它应该忽略“无存储”指令。

尽管有这些描述,我仍然不知道该指令在什么情况下有用。

http cache-control

6
推荐指数
2
解决办法
162
查看次数

如果2个或更多人在同一时间更新记录会发生什么?

我正在使用NHibernate和version属性,每次更新聚合根时都会自动递增.如果2个或更多人在同一时间更新同一记录会怎样?

另外,我该怎么测试呢?

请注意,这不是我所处的情况,只是想知道.

c# sql-server nhibernate concurrency

5
推荐指数
1
解决办法
2243
查看次数

代码中的nHibernate 3.2数据库配置?

NHibernate似乎有一些新方法在代码中映射实体,这非常好,但我找不到任何有关在代码中配置数据库连接的信息.自从我使用NHibernate(版本2)以来已经有一段时间了,我习惯于使用Fluent NHibernate来提供这种功能.NHibernate 3.2中是否有类似的功能,如果有,我该如何使用它?

c# nhibernate nhibernate-mapping nhibernate-mapping-by-code

5
推荐指数
1
解决办法
3760
查看次数

在Firefox中,Kendo Editor + show("幻灯片")不可编辑

有关此问题的工作演示,请参阅JSFiddle.

在Firefox(最新版本,24)中,如果我使用jQuery UI .show("slide", { direction: "right" })来显示kendoEditor,则编辑器不包含我设置的值,并且它不可编辑.如果我使用.show()jQuery中的普通旧版,那么一切正常.它在Chrome 30和IE 10中也可以正常工作.为什么.show("slide")在Firefox 中打破编辑器,是否有解决此问题的方法?

这个例子的Html:

<button id="btn1" type="button">Button 1</button>
<button id="btn2" type="button">Button 2</button>
<div id="div">
    <textarea data-role="editor" data-bind="value: TheValue"></textarea>
    <button id="hide" type="button">Hide</button>
</div>
Run Code Online (Sandbox Code Playgroud)

这是不起作用的JS代码:

$(document).ready(function () {
    var model;
    function bindDiv(value) {
        model = kendo.observable({ TheValue: value });
        kendo.bind($('#div'), model);
        $('#div').show("slide", { direction: "right" });
        //$('#div').show();
    }
    $('#div').hide();
    $('#btn1').click(function () { bindDiv('hello'); });
    $('#btn2').click(function () { bindDiv('goodbye'); });
    $('#hide').click(function () {
        console.log(model.get('TheValue'));
        $('#div').hide("slide", { direction: "right" …
Run Code Online (Sandbox Code Playgroud)

javascript firefox jquery jquery-ui kendo-ui

5
推荐指数
1
解决办法
1877
查看次数

多表复杂实体的乐观并发

我有一个复杂的实体(我们称之为Thing),这是在SQL Server中表示为很多表:一个父表dbo.Thing与多个子表dbo.ThingBodyPart,dbo.ThingThought等等.我们已经使用一个单一的实现乐观并发rowversion上柱dbo.Thing,使用UPDATE OUTPUT INTO的技术.这一直很有效,直到我们添加了一个触发器dbo.Thing.我正在寻找选择不同方法的建议,因为我相信我目前的方法无法修复.

这是我们目前的代码:

CREATE PROCEDURE dbo.UpdateThing
    @id uniqueidentifier,
    -- ...
    -- ... other parameters describing what to update...
    -- ...
    @rowVersion binary(8) OUTPUT
AS
BEGIN TRANSACTION;
BEGIN TRY

    -- ...
    -- ... update lots of Thing's child rows...
    -- ...

    DECLARE @t TABLE (
        [RowVersion] binary(8) NOT NULL
    );

    UPDATE dbo.Thing
    SET ModifiedUtc = sysutcdatetime()
    OUTPUT INSERTED.[RowVersion] INTO @t
    WHERE
        Id …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server triggers stored-procedures optimistic-locking

5
推荐指数
1
解决办法
1100
查看次数

帮助制作Fluent NHibernate为每个表创建一个oracle序列

我正在使用Fluent NHibernate(1.0 RTM)自动化功能来创建我的oracle数据库模式.我的问题是所有表都使用单个"hibernate-sequence",而我更喜欢(我的老板要求)每个表的序列生成器.

有任何想法吗?

c# nhibernate fluent-nhibernate automapping

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

AutoMapper - 条件映射

我环顾四周,无法找到问题的答案.我要做的是条件映射目标对象(不是字段/属性,对象).换句话说,这样的事情:

public class Source
{
    public int Id {get; set;}
    public string Flag {get; set;}
}
public class Destination
{
    public int Id {get; set;}
}

var sources = new List<Source> 
                  { 
                      new Source{Flag = "V", Id = 1},
                      new Source{Flag = "B", Id = 2} 
                  };

var destinations = Mapper.Map<List<Source>, List<Destination>>(sources);

destinations.Count.ShouldEqual(1);
destinations[0].Id.ShouldEqual(2);
Run Code Online (Sandbox Code Playgroud)

有谁知道如何配置类型映射?我正在寻找类似的东西:

Mapper.CreateMap<Source, Destination>()
    .SkipIf(src => src.Flag != "B");
Run Code Online (Sandbox Code Playgroud)

我只是在配置选项中看不到任何似乎支持这一点的内容.任何帮助将非常感激!提前致谢.

.net c# .net-4.0 automapper

4
推荐指数
2
解决办法
4133
查看次数

Html帮助器显示没有标签的显示名称属性

我有这个:

[Display(Name = "Empresa")]
public string Company{ get; set; }
Run Code Online (Sandbox Code Playgroud)

在我的aspx中我有:

<th><%: Html.LabelFor(model => model.Company)%></th>
Run Code Online (Sandbox Code Playgroud)

这会产生:

<th><label for="Company">Empresa</label></th>
Run Code Online (Sandbox Code Playgroud)

是否有任何html帮助扩展只显示没有标签的display属性,只显示纯文本?我想要的输出是这样的:

<th>Empresa</th>
Run Code Online (Sandbox Code Playgroud)

谢谢!

编辑

我按照建议尝试了DisplayFor或DisplayTextFor,但它们无效,因为它们生成:

<th>Amazon</th> 
Run Code Online (Sandbox Code Playgroud)

它们返回属性的值...我想要Display属性中的名称.

html c# asp.net-mvc html-helper

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