小编Nig*_*gel的帖子

设置jQuery jqGrid执行的请求的内容类型

我使用的是最新版本的jqGrid:3.6.4

这似乎是一个简单的问题(或者至少它在我花了几个小时之前做过):

当网格向服务器发送请求(到控制器操作)时,其内容类型始终为:

application/x-www-form-urlencoded; charset=UTF-8
Run Code Online (Sandbox Code Playgroud)

我希望它是:

application/json; charset=utf-8
Run Code Online (Sandbox Code Playgroud)

但是我找不到设置内容类型的方法(例如,没有像$ .ajax调用那样的contentType选项).

所以只是为了澄清,我不是问如何在jQuery服务器请求上设置内容类型,而是专门使用jqGrid,它没有提供明显的选项来执行此操作.

谢谢,奈杰尔.

更新: Oleg的回复修复解决了它.

以下是网格的选项设置:

jQuery("#ContactGridList").jqGrid({
        url: '/ContactSelect/GridData/',
        datatype: 'json',
        ajaxGridOptions: { contentType: 'application/json; charset=utf-8' },
        mtype: 'POST',
        ...
Run Code Online (Sandbox Code Playgroud)

jquery content-type jqgrid

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

NHibernate:NHibernate.Criterion.SqlFunctionProjection没有持久性

我使用的是NHibernate 2.0.0.4000版.

在我的一个查询中,我想利用sql函数dateadd添加一些天.这没有注册,所以我创建了自己的方言并注册了如下功能:

RegisterFunction("adddays", 
    new SQLFunctionTemplate(NHibernateUtil.DateTime, 
    "dateadd(dd, ?1, ?2)"));
Run Code Online (Sandbox Code Playgroud)

注册受到打击,似乎工作正常.我在DetachedCriteria查询中使用该函数,如下所示:

...
Restrictions.LtProperty("DateColumn1"
    Projections.SqlFunction("adddays", NHibernateUtil.DateTime,
        Projections.Constant(days),
        Projections.Property("DateColumn2"))
...
Run Code Online (Sandbox Code Playgroud)

条件从方法返回并传递给另一个查询.在执行最终查询时,我得到以下异常:

NHibernate.MappingException was caught
  Message="No persister for: NHibernate.Criterion.SqlFunctionProjection"
  Source="NHibernate"
  StackTrace:
       at NHibernate.Impl.SessionFactoryImpl.GetEntityPersister(String entityName,
            Boolean throwIfNotFound)
       at NHibernate.Impl.SessionFactoryImpl.GetEntityPersister(String entityName)
       ...
Run Code Online (Sandbox Code Playgroud)

我见过的所有博文都没有提到这个问题.有人可以帮忙吗?

提前干杯.的NiGe.

nhibernate

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

服务器端XForms表单验证并集成到ASP.NET中

我最近一直在研究为ASP.NET Web应用程序创建基于Web的表单的方法,这些表单可以在运行时进行编辑和管理.例如,管理员可能希望添加新的验证规则或新的字段集.

圣杯将提供一种指定表格以及(可能非常复杂的)任意验证规则以及为每个字段分配数据源的方法.然后,该规范将用于更新Web应用程序中的已部署表单,然后该表单将验证客户端和服务器端的提交.

我的调查让我看到了Xforms和许多支持它的技术.一个解决方案似乎是IBM Lotus Forms,但这需要在基础架构方面进行非常大的投资,这使得它变得不可行,尽管表单设计器可能作为创建表单的独立工具很有用.我还打印了浏览器插件,因为表单必须是公开可见的并且符合跨浏览器标准.

我注意到有许多javascript库在给定Xforms模式的情况下提供客户端实现.这些将提供部分解决方案,但仍然需要服务器端验证.

另一种选择似乎涉及使用服务器端解决方案,例如Java应用程序Orbeon.Orbeon提供了一个用于指定表单的工具(虽然没有Lotus Forms Designer那么丰富),但最有趣的一点是,它可以将XForms模式转换为完成验证的XHTML表单.如果可以与现有的ASP.NET应用程序集成,那么它是用Java编写的并不是一个大问题.

所以我的问题是之前是否有人这样做过.这听起来像是一个应该解决的问题,但本质上非常复杂.似乎可以使用现成的工具来设计表单并将其导出为Xforms模式和xhtml表单,并且似乎可以采用xforms模式和表单并使用客户端库发布它.似乎很难提供一种方法来验证服务器端的表单提交并将该过程与.NET很好地集成(虽然看起来.NET社区不涉及XForms;如果我错了请纠正我在这个数量上).

如果产品提供的东西很简单,就像可以根据模式验证提交的Web服务,我会非常高兴.也许Orbeon做到了这一点,但如果知情人士在我进一步研究之前能指出正确的方向,我将不胜感激.

非常感谢.

asp.net validation xforms orbeon

8
推荐指数
1
解决办法
1450
查看次数

以编程方式禁用"打印到文件"

我们有一个用Java编写的现有跨平台(Mac,Windows,Linux)应用程序,它以编程方式将文档发送到默认打印机而不显示打印对话框.

在不同平台上,可以设置打印机以打印到文件.例如,在Windows中,可以将XPS Document Writer设置为默认打印机,或者更改打印机上的属性,使其保留所有文档的文件副本.

有可能检测到这个吗?我对任何建议持开放态度,但解决方案必须跨平台工作.我假设这些细节太低(并且依赖于平台),因此Java解决方案可能不可行,但如果可能的话,这将是理想的.

我们不一定在寻找防弹解决方案,所以任何建议都会有所帮助,无论多么古怪!

编辑:

我意识到这里存在大量非技术问题,这可能引发很多讨论(谁曾想过它?).我想说清楚我不是DRM的粉丝(因为这已被比作)并且不想成为邪恶的:).

我很欣赏这些问题是真实的,在提出建议时我会非常清楚.但是,在我能够做到这一点之前,我必须调查技术解决方案.

java printing cross-platform

8
推荐指数
1
解决办法
1479
查看次数

Automapper:使用BeforeMap和AfterMap

我正在使用automapper(成功达到某一点)在两个接口之间执行多态映射,如下所示:

configure.CreateMap<IFrom, ITo>()
    .Include<FromImplementation1, ToImplementation1>()
    .Include<FromImplementation2, ToImplementation2>()
    ... ;
Run Code Online (Sandbox Code Playgroud)

这很好用.此外,接口包括方法签名,其实现旨在在映射之前修改对象:

public interface IFrom
{
    void PrepareForMapping();
}
Run Code Online (Sandbox Code Playgroud)

如您所见,该方法没有返回,但旨在在执行映射之前修改对象的状态.目前,在映射对象之前手动调用此方法,但我的目的是在映射发生之前自动执行该方法.我尝试使用它如下:

configure.CreateMap<IFrom, ITo>()
    .BeforeMap((x,y) => x.PrepareForMapping())
    .Include<FromImplementation1, ToImplementation1>()
    .Include<FromImplementation2, ToImplementation2>()
    ... ;
Run Code Online (Sandbox Code Playgroud)

但是,该方法永远不会被调用,尽管映射本身仍然可以正常工作.我已经在PrepareForMapping()方法的每个实现上放置了断点,但没有一个被击中.所以我得出的结论是,我误解了BeforeMap/AfterMap的工作方式,或者我做错了什么(或两者都有).

非常感谢.

c# automapper

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