问题列表 - 第25068页

将类型限制为Int,Double,long的泛型

是否有可能约束的方法,使得其只接收int,double,long或其他数字类型,其具有通常的数值运算(例如+,-,*,/)中所定义?

c#

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

ASP.NET MVC中的模拟

我有一个需要从安全位置读取文件的Action,所以我必须使用模拟来读取文件.

此代码工作原理:

[AcceptVerbs(HttpVerbs.Get)]
public ActionResult DirectDownload(Guid id)
{
    if (Impersonator.ImpersonateValidUser())
    {
        try
        {
            var path = "path to file";
            if (!System.IO.File.Exists(path))
            {
                return View("filenotfound");
            }

            var bytes = System.IO.File.ReadAllBytes(path);
            return File(bytes, "application/octet-stream", "FileName");
        }
        catch (Exception e)
        {
            Log.Exception(e);
        }finally
        {
            Impersonator.UndoImpersonation();
        }
    }
    return View("filenotfound");
}
Run Code Online (Sandbox Code Playgroud)

上面代码的唯一问题是我必须将整个文件读入内存,我将处理非常大的文件,所以这不是一个好的解决方案.但如果我更换这两行:

var bytes = System.IO.File.ReadAllBytes(path);
return File(bytes, "application/octet-stream", "FileName");
Run Code Online (Sandbox Code Playgroud)

有了这个:

return File(path, "application/octet-stream", "FileName");
Run Code Online (Sandbox Code Playgroud)

它不起作用,我收到错误消息:

访问路径'c:\ projects\uploads\1\aa2bcbe7-ea99-499d-add8-c1fdac561b0e\Untitled 2.csv'被拒绝.

我想使用带有路径的文件结果,当我已经"撤消"模拟时,尝试稍后在请求管道中打开文件.

请记住,模拟代码有效,因为我可以读取bytes数组中的文件.我想做的是将文件流式传输到客户端.

知道如何解决这个问题吗?

提前致谢.

security asp.net-mvc impersonation

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

计算C#中的XmlNodes总数

我试图找到一种方法来递归地从XmlNode获取子节点的总数.

这就是说我想算所有孩子,大孩子等.

我觉得它有点像

node.SelectNodes(<fill in here>).Count
Run Code Online (Sandbox Code Playgroud)

但我不知道XPath是什么.

c# xml xpath

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

TFS:如何在加载解决方案时dectet更改文件?

我是TFS与Visual Studio 2010集成的新手,我有一个问题我想解决.

实际上,当我打开解决方案时,如何检测,查看解决方案资源管理器自上次登录后哪个文件已更改?

如果我查看Source Control Explorer最新列,我能够发现更改的文件,但它不是那么直观.

我附上一张图片以便更好地理解.

alt text http://img37.imageshack.us/img37/9308/mainmicrosoftvisualstud.jpg

对于与解决方案资源管理器中的项目关联的frmAbout.vb(在本例中),我想有一个不同的图标,而不是锁.你知道我怎么能实现这个行为?或Visual Studio 2010的一些替代品(插件)?

编辑:我们是一个由3人组成的小团队,我们需要在每行代码上保持一致,因为我们可以互换.因此,对于我们有清晰可见的图标,将是有帮助的.

编辑2:赏金时间再次完成,没有真正的解决方案.如果您知道实现此行为的插件,请告诉我们.如果我找到一些空余时间,我会尝试写它.

tfs visual-studio-2010 tfs2010

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

jquery文件内部或外部的函数准备就绪

到目前为止,我只是把我所有的jQuery优点放在$(document).ready()函数中,包括在某些用户交互中使用的简单函数.

但是,不需要加载DOM文档或仅在事后调用的函数也可以放在外面$(document).ready().例如,考虑一个非常简单的验证函数,例如:

function hexvalidate(color) {
// Validates 3-digit or 6-digit hex color codes 
 var reg = /^(#)?([0-9a-fA-F]{3})([0-9a-fA-F]{3})?$/;
 return reg.test(color);
}
Run Code Online (Sandbox Code Playgroud)

该函数仅在$(document).ready()函数内 调用.

什么是最佳实践(语法,速度); 在jquery文档就绪函数内部外部放置这样的函数?

javascript jquery scope function

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

N**K的位数

对于给定的整数N和K(1 <= N,K <= 2000000000),您必须找到N ^ K的位数.

有什么配方或什么的吗?因为我试图通过简单地驱动N**K来解决它,但是它不适用于大值,并且程序因为计算而简单地冻结.我正在寻找一些快速的方式,也许像我之前说过的一些数学公式.

c++ math

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

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

从Bash脚本在线程中运行UNIX命令

问题背景

我有一个SVN存储库的post-commit脚本,它在签入时存档并备份增量转储文件.

我想更新它以进行异地备份,但是如果签入很大,异地拷贝可能需要几分钟才能完成.

在UNIX bash脚本中是否可以在立即返回的线程中执行此副本,在后台执行操作?

欢呼任何帮助!

unix multithreading

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

在C#4.0中使用动态的RuntimeBinderException

我有一个界面:

public abstract class Authorizer<T> where T : RequiresAuthorization
{
    public AuthorizationStatus Authorize(T record)
    {
        // Perform authorization specific stuff
        // and then hand off to an abstract method to handle T-specific stuff
        // that should happen when authorization is successful

    }
}
Run Code Online (Sandbox Code Playgroud)

然后,我有一堆不同的类,它们都实现了RequiresAuthorization,相应地,Authorizer<T>每个类都有一个(我的域中的每个业务对象在授权记录后都需要不同的逻辑来执行).

我也使用UnityContainer,我注册了各种各样Authorizer<T>的.然后我有一些代码如下,从数据库中找到正确的记录并授权它:

void Authorize(RequiresAuthorization item)
{
    var dbItem = ChildContainer.Resolve<IAuthorizationRepository>()
                               .RetrieveRequiresAuthorizationById(item.Id);
    var authorizerType = type.GetType(String.Format("Foo.Authorizer`1[[{0}]], Foo",
                             dbItem.GetType().AssemblyQualifiedName));
    dynamic authorizer = ChildContainer.Resolve(type) as dynamic;

    authorizer.Authorize(dbItem);
}
Run Code Online (Sandbox Code Playgroud)

基本上,我正在使用对象上的Id从数据库中检索它.在后台,NHibernate负责确定它是什么类型的RequiresAuthorization.然后我想为它找到合适的Authorizer(我不知道在编译时Authorizer<T>我需要什么实现,所以我有一点反思来获得完全限定类型).为了实现这一点,我使用UnityContainer的Resolve方法的非泛型重载来从配置中查找正确的授权器.

最后,我想在授权器上调用Authorize,传递我从NHibernate回来的对象.

现在,针对这个问题:

在VS2010的Beta2中,上面的代码完美无缺.在RC和RTM上,一旦我进行了Authorize()调用,我就得到一个RuntimeBinderException,说"最好的重载方法匹配 …

c# reflection exception dynamic

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

如何用python urllib忽略windows代理设置?

我希望Python在使用时忽略Windows代理设置urllib.我设法做到这一点的唯一方法是禁用Internet Explorer上的所有代理设置.有任何程序化方式吗?

os.environ['no_proxy'] 不是一个好选择,因为我想避免代理所有地址.

python proxy urllib

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