小编leo*_*ora的帖子

可编辑的文本框宽度

无论如何,当使用内联替换为jeditable时,文本框大于文本.我想给用户空间在现有文本的顶部添加新文本.

jquery jeditable

11
推荐指数
1
解决办法
5842
查看次数

使用二级缓存时,nhibernate查询缓存和实体缓存之间有什么区别?

我正在尝试设置nhibernate二级缓存,我在本文中看到,我试图理解查询缓存和实体缓存之间的区别.它说你需要添加

    Cache.ReadOnly();  or Cache.ReadWrite();
Run Code Online (Sandbox Code Playgroud)

在每个单独的实体映射如下:

public class CountryMap : ClassMap<country>
{
   public CountryMap()
   {
      Table("dropdowns");
      Id(x => x.Id, "pkey");
       Map(x => x.Name, "ddlong");
      Map(x => x.Code, "dddesc");
       Where("ddtype = 'COUNTRY'");
       //Informing NHibernate that the Country entity itself is cache-able.
       Cache.ReadOnly();
   }
Run Code Online (Sandbox Code Playgroud)

}

但是当使用nhibernate profiler时,我看到的东西击中了二级缓存,我没有设置这个Cache.ReadOnly()值.

这真的需要吗?我应该为每个实体做这个吗(无论该实体多久改变一次?).

如果答案是肯定的,我应该为所有实体执行此操作,我看到一个页面提到存在使用此行设置实体的风险,因为如果您尝试加入可能会导致选择n + 1查询问题该实体与查询中的其他实体.我正在使用nhibernate profiler,看起来有些东西只是从下面的代码中击中二级缓存.在我的会话设置中,我有以下代码:

  return configuration
            .Mappings(m => m.FluentMappings.AddFromAssemblyOf<ApplicationMap>().Conventions.Add(typeof(Conventions)))
            .ExposeConfiguration(
                c => {
                    c.SetProperty("cache.provider_class", "NHibernate.Caches.SysCache.SysCacheProvider, NHibernate.Caches.SysCache");
                    c.SetProperty("cache.use_second_level_cache", "true");
                    c.SetProperty("cache.use_query_cache", "true");
                    c.SetProperty("expiration", "86400");
                })
            .BuildSessionFactory();
Run Code Online (Sandbox Code Playgroud)

我有一个通用的"查询"方法,它执行此操作:

   ICriteria c = Session.CreateCriteria(typeof(T));
   c.SetCacheable(true);
   return c.Future<T>().AsQueryable();
Run Code Online (Sandbox Code Playgroud)

所以基本上我正在尝试确认我是否正确设置了缓存,因为当我使用nhibernate探查器但我没有在实体映射代码中设置Cache时,我看到一些二级缓存命中.我试图确定是否还有其他事情需要做以使缓存工作(或更好地工作) …

nhibernate caching fluent-nhibernate

11
推荐指数
3
解决办法
7657
查看次数

在敏捷中偿还技术债务

如果您使用敏捷,那么我们的想法是始终进行渐进式重构,而不是建立大量的技术债务.话虽这么说,如果你有一个敏捷团队正在接管拥有大量技术债务的软件,你必须在某个地方适应它.

你去创建开发者用户故事吗?.例如 .

  • 作为开发人员,我对业务逻辑模块的测试覆盖率为50%,因此我对交付有信心
  • 作为开发人员,该应用程序支持依赖注入,因此我们可以在未来交换结算并更加灵活.

或者是否有另一种清理此代码技术债务的最佳做法

agile

10
推荐指数
1
解决办法
1271
查看次数

将哈希值转换为十六进制字符串

在本页面:

http://www.shutterfly.com/documentation/OflyCallSignature.sfly

它说,一旦你生成一个哈希你然后:

将哈希值转换为十六进制字符串

csharp中有代码可以执行此操作吗?

c# string hash hex

10
推荐指数
1
解决办法
9858
查看次数

从用户输入逗号分隔的字符串到数组中删除所有额外空格的最简洁方法是什么

程序让用户在逗号分隔的字符串中键入数组:

basketball, baseball, soccer ,tennis
Run Code Online (Sandbox Code Playgroud)

逗号之间可能有空格,也可能没有.

如果这个字符串只是split()在逗号上,那么数组中的某些项可能在它们之前或之后有空格.

清理这个的最佳方法是什么?

c# regex arrays string

10
推荐指数
2
解决办法
4948
查看次数

获取SortedDictionary中的最后一个元素

我看到了这个问题.

如何在.Net 3.5中获取SortedDictionary中的最后一个元素.

c# collections sorteddictionary

10
推荐指数
2
解决办法
1万
查看次数

是否可以在匿名类型中使用条件字段

我有一些看起来像这样的代码,并从现有的集合创建一个列表

 var items = items.ConvertAll(r => new
            {
                description = FormatDescription(r),
                start = r.Milestone.HasValue ? r.Milestone.Value.ToString("yyyy-MM-ddTHH:mm:ssZ") : DateTime.Today.ToString("yyyy-MM-ddTHH:mm:ssZ"),
                classname = "significance" + r.SignificanceLevel,
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,现在如果我没有开始日期(r.Milestone)那么我就把它放在今天的日期.我真的想做的如果说:

  1. 如果我有一个r.Milestone.Hasvalue显示该日期,如果我没有值,则根本没有匿名类型的START DATE字段.

是否可以使用此条件逻辑,您可以在此类代码中一起删除字段?

c# linq anonymous-types conditional-statements

10
推荐指数
1
解决办法
2917
查看次数

jQuery jqGrid是否支持水平滚动条和冻结列?

我有一个包含很多列的jqGrid,当列宽的总和大于固定宽度容器时,它会显示如下:

在此输入图像描述

如果网格的宽度太大,则不要使用水平滚动条.

如何为jQgrid获取水平滚动条,以便有一个固定的最大网格大小,如果我添加更多列,它将只是滚动?

此外,假设这是可能的,你可以冻结前几列吗?

jquery jqgrid horizontal-scrolling

10
推荐指数
1
解决办法
2万
查看次数

如何让jqgrid冻结列与word换行一起使用

我正在使用最新的jqgrid 4.3.1,我正在尝试使用冻结列.

问题是我在jqgrid中覆盖了默认的css来支持自动换行(在这个问题中可以看到css解决方案),我认为这就是冻结列与常规列没有正确对齐的原因.冻结行的高度与网格其余部分的高度不同.这是一个截图..冻结的列在红色框中突出显示(注意:我划掉了内容,因为它不是一个公共站点:

无论如何,在jqgrid中将冻结的列与单词包装的单元格对齐

在此输入图像描述

注意:在尝试下面的Oleg解决方案后,它可以在Firefox中运行但在IE8中我没有看到水平滚动条(见图)

火狐:

在此输入图像描述

IE :(注意没有水平滚动条)

在此输入图像描述

注意:

为了帮助回答Oleg的问题,这里是我的jqgrid设置的转储:

jQuery(gridSelector).jqGrid({
    mtype: 'POST',
    toppager: true,
    url: siteRoot + controller + "/" + gridDataName + "?" + querystring,
    datatype: "json",
    colNames: names,
    colModel: model,
  shrinkToFit: false,

    imgpath: siteRoot + "Scripts/jqGrid431/themes/steel/images",
    rowNum: 20,
    rowList: [10, 20, 50, 999],
    altRows: true,
    altclass: "altRow",
    jsonReader: {
        root: "Rows",
        page: "Page",
        total: "Total",
        records: "Records",
        repeatitems: false,
        id: "Id"
    },
    search: true,
    postData: (myfilter) ? { filters: JSON.stringify(myfilter)} : {},
    //postData:  { filters: …
Run Code Online (Sandbox Code Playgroud)

jquery jqgrid word-wrap

10
推荐指数
1
解决办法
1万
查看次数

使用nhibernate时更新子集合的最优雅方法是什么(不创建不必要的添加和删除)?

我有一个名为Project的域对象,它映射到我的SQL Server数据库中的表.它有一个名为Dependencies的List属性.

   public class Project
   {
         public int Id;
         public List<ProjectDependency> Dependencies;   
   }

   public class ProjectDependency
   {
          public Project Project;
          public Project Dependency;
   }
Run Code Online (Sandbox Code Playgroud)

并且我试图找出在给定新的dependencyIds列表的情况下更新依赖项列表的最有效方法.

所以这是一个天真的实现:

 public void UpdateDependencies(Project p, List<int> newDependencyIds)
 {
       p.Dependencies.Clear();
       foreach (var dependencyId in newDependencyIds)
       {
             Project d = GetDependency(dependencyId)
             p.Dependencies.Add(new ProjectDependency{Project = p, Dependency = d});
       }
 }
Run Code Online (Sandbox Code Playgroud)

但问题在于,即使没有任何变化,我也会清除所有项目并对之前的相同项目进行插入.

我正在寻找一种优雅的方法来确定差异(已经添加了什么,删除了什么)并且只是进行了这些更改,如果之前和之后存在依赖关系那么它就不会被触及.

c# arrays nhibernate list

10
推荐指数
1
解决办法
1050
查看次数