小编jis*_*shi的帖子

将IList或IEnumerable转换为Array的最佳方法

我有一个HQL查询,可以生成IList结果,或IEnumerable结果.

但是,我希望它返回我正在选择的实体数组,实现它的最佳方法是什么?我可以通过它枚举并构建数组,或者使用CopyTo()定义的数组.

有没有更好的方法?我选择了CopyTo方法.

c# nhibernate

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

32位池和64位池之间的内存使用情况

我们有一个围绕MonoRail和NHibernate构建的ASP.NET应用程序,我注意到在使用64位模式或32位模式运行它时会出现奇怪的行为.所有内容都编译为AnyCPU,并且在两种模式下运行良好,但内存使用情况有很大差异.

查看ANTS的以下快照:

32bit_snapshot: 在此输入图像描述

VS

64bit_snapshot: 在此输入图像描述

两个快照的使用场景几乎相同(我在两次运行中都点击了相同的页面).

首先,为什么未使用的内存在64位模式下如此之高?为什么非托管内存在64位模式下的大小是4倍?

任何有关这方面的见解都会非常有帮助.

.net asp.net nhibernate memory-management iis-7.5

21
推荐指数
2
解决办法
4396
查看次数

如何为数据库中创建的所有表设置默认排序规则?

我有一个从损坏的数据库中取出的数据库转储,我需要将其导入到干净的安装中.但是,原始数据库似乎已设置为使用utf8_unicode_ci.

将此转储导入干净数据库时,将使用默认的utf8_general_ci创建所有数据库,这会为我提供重复的单词条目,包括ß,因为一般会生成'ß' == 's',而utf8_unicode_ci应该具有'ß' == 'ss'.

但是,当导入mysql时,似乎总是在创建表时选择默认的utf8_general_ci,即使我将数据库(schema)默认设置为utf8_unicode_ci.

有没有办法强制它使用utf8_unicode_ci创建表而不必在我的转储中注入alter table语句?它的大小是几GB,手动修改会很痛苦.

配置MySQL系统范围很好.

我尝试过设置:

collation-server=utf8_unicode_ci

在my.cnf中,但似乎没有设置表创建的默认排序规则.

mysql collation

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

使用.NET中的GDI调整图像大小会降低饱和度

我正在解决一个问题,当我使用GDI操作它时,我调整大小的图像会失去颜色饱和度.

我正在加载JPG作为原始版本,调整大小并且生成的图像的饱和度(颜色强度)比原始图片少得多.我该怎么做才能改善这一点?这是我的代码:


using ( var original = System.Drawing.Image.FromStream( new MemoryStream( image.RawData ) ) )
{
    using ( var dst = new Bitmap( width, height, PixelFormat.Format32bppArgb ) )
    {
        using ( var g = Graphics.FromImage( dst ) )
        {
            g.SmoothingMode = SmoothingMode.HighQuality;
            g.PixelOffsetMode = PixelOffsetMode.HighQuality;
            g.CompositingQuality = CompositingQuality.HighQuality;

            g.DrawImage( original, 0, 0, dst.Width, dst.Height );
            g.InterpolationMode = InterpolationMode.HighQualityBicubic;
            g.DrawImage( original, 0, 0, dst.Width, dst.Height );

            var jpgEncoder = GetEncoder( ImageFormat.Jpeg );
            var myEncoderParameters = new EncoderParameters( 1 );
            var quality = …

.net c# gdi+ colors image-processing

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

从NHibernate会话中断开对象

在我的nhibenate会话中,我使用AutoMapper映射对象,并在afterMap操作中创建对象的新实例,因为我从数据库中提取对象以进行属性比较.因此,AutoMapper创建一个具有相同ID的对象的两个实例.当我尝试提交会话时,我得到错误,我必须使用相同的ID对象.

所以我想在属性比较后断开我提取的对象.之后我会提交会议

我怎么做的?

谢谢!

c# nhibernate fluent-nhibernate

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

只有http状态200与wget一起创建文件?

我一直试图找出一种方法,使wget只创建一个文件,如果实际的下载响应是有效的,这意味着没有404或500状态代码,只有200.

但是,当使用-O选项(指定文件名)时,它将始终使用错误页面的内容创建文件,并且我没有找到一种方法来指定它应该忽略它,如果它收到404响应 - 头.

我是否需要检查退出代码并管道输出,还是有更好的选择?

wget

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

nhibernate queryOver投影语法

我正在尝试从NH 3.0 Cookbook中获取一些代码,并想知道为什么我无法获得下面的代码来编译.我认为应该使这个工作的QueryProjectionBuilder在"NHibernate.Criterion.Lambda"中,但它的using指令没有帮助.

问题是SelectGroup和SelectAvg部分.假设书中的语法是正确的,那么有人可以看到缺少的参考吗?

namespace Queries.Implementations
{
using System;
using System.Collections.Generic;
using System.Linq;
using Eg.Core;
using NHibernate;
using NHibernate.Criterion;
using NHibernate.Criterion.Lambda;

    public class QueryOverQueries : CookbookQueriesBase
    {

        public override IEnumerable<NameAndPrice> GetAvgDirectorPrice(ISession session) {
            return _session.QueryOver<Movie>()
                .Select(list => list
                                    .SelectGroup(m => m.Director)
                                    .SelectAvg(m => m.UnitPrice)
                )
                .List<object[]>()
                .Select(props =>
                        new NameAndPrice
                        {
                            Name = (string) props[0],
                            Price = (decimal) props[1]
                        });

        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c# nhibernate projection queryover

7
推荐指数
1
解决办法
5409
查看次数

HttpUtility.UrlEncode标准编码与指定编码?

两者之间有什么区别:

HttpUtility.UrlEncode("some string with é and ? and stuff")
HttpUtility.UrlEncode("some string with é and ? and stuff", Encoding.UTF8)
HttpUtility.UrlEncode( "some string with é and ? and stuff", Encoding.Default )
Run Code Online (Sandbox Code Playgroud)

结果是:

some+string+with+%c3%a9+and+%ce%b2+and+stuff
some+string+with+%c3%a9+and+%ce%b2+and+stuff
some+string+with+%e9+and+%df+and+stuff
Run Code Online (Sandbox Code Playgroud)

在测试时,我得到前两个相同的结果,所以我可以安全地假设UTF8是默认值,除非指定,或者可以在不同的系统上有所不同吗?

我有一些unicode转义序列的示例,如下所示:

%u00e9(é)

相当确定paypal在他们的IPN请求中发送了它.为什么.NET不像这样编码?

.net c# urlencode

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

Firefox在for循环"分配大小溢出"中抛出js错误

以下是我的代码

相同的代码在本地服务器中工作,但不在实时.

    htmlC = "";
    htmlC += '<select name="pagenum" id="pagenum" style="width:135px" onChange="setPageSearchValue(this.value)">';
    for(i=1 ; i<=tot_pages ; i++)
    {
            if(i.toString() == document.frmlist.start.value)
            {
                htmlC += "<option value='"+i+"' 'selected' >"+i+"</option>";
            }
            else
            {
                htmlC += "<option value='"+i+"'>"+i+"</option>";
            }
    }   
    htmlC += '</select>';
Run Code Online (Sandbox Code Playgroud)

我试过找到无限循环但没有成功.完全相同的代码在本地服务器中工作.

javascript for-loop memory-management runtime-error

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

400尝试使用XHR联系WCF服务时出现错误请求

我正在创建一个将返回json对象的WCF Web服务,但是当我尝试进行AJAX调用时,我仍然遇到400错误请求错误:

OPTIONS http://localhost:55658/WebServiceWrapper.svc/GetData?_=1318567254842&value=97            HTTP/1.1
Host: localhost:55658
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
DNT: 1
Connection: keep-alive
Origin: http://localhost:3000
Access-Control-Request-Method: GET
Access-Control-Request-Headers: content-type

HTTP/1.1 400 Bad Request
Server: ASP.NET Development Server/10.0.0.0
Date: Fri, 14 Oct 2011 04:40:55 GMT
X-AspNet-Version: 4.0.30319
Cache-Control: private
Content-Length: 0
Connection: Close
Run Code Online (Sandbox Code Playgroud)

这是我的AJAX调用:

$.ajax({
  contentType: 'application/json',
  url: 'http://localhost:55658/WebServiceWrapper.svc/GetData',
  dataType: 'json',
  data: {
    value: 97
  },
  success: function (data) {
    alert('success' + data);
  },
  error: …
Run Code Online (Sandbox Code Playgroud)

c# ajax wcf jquery xmlhttprequest

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

从iis调用XMLRPC时,为什么不是fiddler捕获请求?

我有一个用.NET编写的web应用程序,它使用CookComputing.XmlRpcV2进行xmlrpc通信.

当我在Visual Studio 2008中调用我的单元测试时,fiddler2成功捕获了实际的xmlrpc-requests,但是当我在IIS7下运行实际的应用程序时,它什么也没显示.我已经验证它实际上是在我的防火墙中调用xmlrpc-requests,但我需要查看请求的内容以进行调试.

我已经发布了一个运行fiddler的iisreset,试图看看IIS是否真的在应用程序启动时从WinINET获取代理设置,但它没有帮助.

IIS是否拥有每个应用程序自己的代理设置?或者,如果它是ASP.NET的一部分...我似乎无法找到任何有关它的信息.

我当然可以在代码中以某种方式在WebRequest中定义我自己的代理服务器,但由于我只是想利用代理进行调试,我宁愿找到一个更简单的解决方案.

这是Vista,运行带有.NET 3.5 SP1的iis7.Fiddler2版本2.1.9.2

asp.net iis iis-7 fiddler

3
推荐指数
1
解决办法
4313
查看次数

IE8破坏脚本src?

我有一个包含动态js脚本的页面,具体取决于我正在访问的页面.但是,我从一些IE8访问者的日志中得到错误,看起来实际的请求 - url完全被破坏了所提到的脚本.

这是应该取的:

<script type="text/javascript" src="?partial=filterjs&json=true&viewall"></script>

转换为/ sv/5/outlet?partial = filterjs&json = true&viewall

但是,查看我的日志,我看到的内容如下:

/sv/5/outlet?partial=filterjs&json=truepor</a></li></ul></h2></li><li%20class=
/sv/7/jackor?partial=filteent/view/teams
Run Code Online (Sandbox Code Playgroud)

它似乎截断了url,并在稍后出现的实际标记中附加了随机内容(事实上,虽然大约在相同的偏移处)

我首先想到它与IE8实现的新XSS过滤器有关,但尝试使用HTTP-header禁用它

X-XSS-Protection: 0

没有成功.

我也无法在自己的机器上重现此错误,但这种情况每天发生几次(在每天约3000次访问的网站上).根据用户代理(NT 5.1,6.0和6.1),这在XP,Vista和Win7上都会发生.

有人认出这种行为吗?

javascript internet-explorer-8

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