小编usr*_*usr的帖子

如何在没有重定向的情况下在ASP.NET中显示自定义404页面?

当IIS 7上的ASP.NET中的请求为404时,我希望显示自定义错误页面.地址栏中的URL不应更改,因此不会重定向.我怎样才能做到这一点?

.net c# vb.net asp.net asp.net-mvc

5
推荐指数
2
解决办法
8032
查看次数

XSLT:在html属性中插入参数值

如何在以下代码中插入youtubeId参数:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xsl:stylesheet [ <!ENTITY nbsp "&#x00A0;"> ]>
<xsl:stylesheet 
    version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
    xmlns:msxml="urn:schemas-microsoft-com:xslt"
                xmlns:YouTube="urn:YouTube"
    xmlns:umbraco.library="urn:umbraco.library"
    exclude-result-prefixes="msxml umbraco.library YouTube">


<xsl:output method="xml" omit-xml-declaration="yes"/>

 <xsl:param name="videoId"/>
<xsl:template match="/">
 <a href="{$videoId}">{$videoId}</a>

<object width="425" height="355">
<param name="movie" value="http://www.youtube.com/v/{$videoId}&amp;hl=en"></param>
<param name="wmode" value="transparent"></param>
<embed src="http://www.youtube.com/v/{$videoId}&amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"></embed>
</object>$videoId {$videoId} {$videoId}
 <xsl:value-of select="/macro/videoId" />
</xsl:template>

</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)

<xsl:value-of select="/macro/videoId" /> 实际输出videoId但所有其他事件都没有.

我正在Umbraco CMS中创建一个宏.该参数正确传递到XSLT(因为实际输出其值).如何将此值插入src-attribute?

xml xslt umbraco

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

帮助选择要选择的SQL Server 2008横向扩展解决方案(复制,...)

我目前正在穿越SQL Server横向扩展技术的丛林,如复制,日志传送,镜像...我对我的选择有以下限制:

  • 我希望只读负载分布在主要和辅助(镜像,订户)服务器上
    • 写入负载可以直接发送到主服务器
    • 解决方案几乎不需要维护.架构更改应该只复制到辅助服务器(注意:复制在这里有一些严重的约束)
    • 写入的数据应该可以在辅助服务器上非常快速地访问(在1s以下,但更好的是即时的)
    • 在服务器故障时,我可以轻松地减少长达一小时的数据丢失.我更关注简单的可扩展性

以下是我可以选择的一些选项:http://msdn.microsoft.com/en-us/library/bb510414.aspx.您可以分享的任何经验吗?

sql-server replication mirroring log-shipping sql-server-2008

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

如何停止网络服务器(通过 web.py 和线程实现)

我已经使用 web.py 实现了简单的网络服务器。通过多线程模块,我可以在不同的端口上运行多个网络服务器实例。现在所有的实例都在永远监听 http 请求。我想踩一个特定的线程。有没有办法阻止实例监听(或完全杀死特定线程。)

web.py

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

SQL Server:row_number按超时分区

我有一个包含一系列(IP varchar(15),DateTime datetime2)值的表.每行对应于用户发出的HTTP请求.我想为这些行分配会话号.不同的IP地址具有不同的会话号.如果最后一个请求超过30分钟,则应为同一IP分配新的会话号.这是一个示例输出:

IP,      DateTime,         SessionNumber, RequestNumber
1.1.1.1, 2012-01-01 00:01, 1,             1
1.1.1.1, 2012-01-01 00:02, 1,             2
1.1.1.1, 2012-01-01 00:03, 1,             3
1.1.1.2, 2012-01-01 00:04, 2,             1 --different IP => new session number
1.1.1.2, 2012-01-01 00:05, 2,             2
1.1.1.2, 2012-01-01 00:40, 3,             1 --same IP, but last request 35min ago (> 30min)
Run Code Online (Sandbox Code Playgroud)

第1列和第2列是输入,第3和第4列是所需的输出.该表显示了两个用户.

由于底层是表真的很大,如何有效地解决这个问题?我更喜欢对数据进行少量的传递(一次或两次).

t-sql sql-server olap row-number sql-server-2012

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

在main之外的方法中使用print语句是否更有效?

这可能是一个愚蠢的问题,但我从一本书中自学,我注意到很多例子都在main之外的方法中使用print语句.我想知道你把它放在哪里有所不同所以当我遇到问题时,我粘贴了我正在处理的程序.让getArea方法打印该区域或将其保留在main中会更有效吗?

private static Scanner in;
private static double s;
private static double a;

public static void main(String[] args) {
     in = new Scanner(System.in);
     DecimalFormat two = new DecimalFormat("#.##");
     System.out.println("Enter the length from center to vertex: ");
     double r = in.nextDouble();
     s = getSide(r);
     a = getArea(s);

     System.out.println("The area of a pentagon of radius "+r+" is "+two.format(a));

}

public static double getSide(double radius){
    double side = 2 * radius * Math.sin((Math.PI) / 5);
    return side;
}

public static double getArea(double side){ …
Run Code Online (Sandbox Code Playgroud)

java methods performance program-entry-point

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

LINQ:根据每个项目有条件地加入两个不同的表

有没有办法iflinq声明中设置?

return(from x in db.products where x.id == id 
    if(x.type == 1){
        join y in db.category1 on x.idItem equals y.id
    }else if(x.type == 2){
        join z in db.category2 on x.idItem equals z.id
    }
select New {....}).ToList();
Run Code Online (Sandbox Code Playgroud)

我知道这段代码错了但我的问题是:

实现这个的最佳方法是什么?

c# linq

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

我应该为我的GUI应用程序使用async"all-way"吗?

我通过开发一个相当大的WPF应用程序,通过串行通信来控制一个复杂的硬件,这是一个很好的方法.在应用程序"堆栈"的最底部,我有一个串行通信层(利用.Net'SerialPort'类).读取和写入h/w设备是系统的基本部分,由业务逻辑层的许多不同区域使用,通常散布着复杂的科学计算和其他这样的逻辑; 这些BLL方法又从整个UI层调用.

目前,业务逻辑层中的所有内容(包括SerialPort读写)都是同步的.我使用async/await的唯一一次是在UI层,通常是在调用业务逻辑时.在这里我将打电话Task.Run(),例如: -

private async void SomeButtonClick(object sender, EventArgs e)
{
    await Task.Run(() => _someBLLService.TurnPumpOn());
}
Run Code Online (Sandbox Code Playgroud)

这是一个需要几毫秒的简单示例.一个更复杂的例子是开始一个长期运行的过程(再次使用上述技术); 此业务逻辑"服务"将运行几秒或几分钟,从硬件收集数据并在此期间执行其他"控制"功能.它会定期将数据广播回UI,以便在图表上绘图(通过pubsub事件聚合器框架).上述技术运行良好,允许UI在发生此类业务层进程时保持响应.

我最近一直在考虑从串行通信代码(例如使用.ReadAsync)开始"一路异步" ,但这会对整个系统产生影响.数十个(如果不是数百个)业务逻辑方法需要重构为异步方法,直到UI层.在这里,我可以稍微简化上面的代码:

private async void SomeButtonClick(object sender, EventArgs e)
{
    await _someBLLService.TurnPumpOn();
}
Run Code Online (Sandbox Code Playgroud)

虽然我不反对解决大型重构工作,但我想知道它的好处是什么.很多人(比如Stephen Cleary)主张"异步一路"解决方案,但主要目标似乎是在调用长时间运行的BLL进程时保持UI响应,这是我的Task.Run()技术已经做到的.

c# asynchronous async-await

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

Wix中的大多数事情都必须手工完成吗?

我一直在使用Click Once更长时间,并且很容易将应用程序部署到我的客户.但最近我决定继续前进,因为有些东西我在ClickOnce部署中无法解决(比如ngen Devexpress库).

所以我想转向WiX,但我想知道我是否真的需要

<DirectoryRef Id="INSTALLLOCATION">
  <Component Id="Executable.exe" Guid="{C4DCEDD2-B4FF-4DFB-B7D6-2FA8B16D7740}">
    <File Id="Executable.exe" Source="C:\MySourceFiles\Executable.exe" KeyPath="yes" Checksum="yes"/>
  </Component>
  <Component Id="documentation.html" Guid="PUT-GUID-HERE">
    <File Id="documentation.html" Source="C:\MySourceFiles\documentation.html" KeyPath="yes"/>
  </Component>

  ... each dll goes here
  ... each xml goes here
</DirectoryRef>
Run Code Online (Sandbox Code Playgroud)

我是否必须通过70多个文件并逐个放置并为其生成GUID?它不能从目录或其他东西自动生成它,然后最终我可以填写它?或者我做错了什么?

c# wix visual-studio-2010 winforms

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

等待异常处理完成所有任务

根据MSDN Task.WaitAll在执行至少一个Task实例期间抛出异常时立即通过AggregateException.我需要等待所有任务完成处理每个抛出的异常.所以我需要做类似的事情:

while (true)
{
    try
    {
        Task.WaitAll(tasks);
        break; //only if no exception is occured
    }
    catch (AggregateException aex)
    {
        //exceptions handling...
    }
}
Run Code Online (Sandbox Code Playgroud)

或者是一些更理性的方式?

.net c# exception-handling wait task-parallel-library

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