问题列表 - 第42140页

如何禁用 PowerShell 函数中的常见参数解析?

我想为我的一个函数禁用 PowerShell 的“通用参数”。我一直在通过编写如下函数来研究 p4.exe(Perforce 命令行实用程序)的一组扩展:

function p4(
    [parameter(valuefromremainingarguments=1)]
    [string[]]$cmdline)
{
    # ...do some fun stuff with $cmdline...
    p4.exe $cmdline  # for illustration only - actual implementation uses .net objects
}
Run Code Online (Sandbox Code Playgroud)

关键是能够像我通常在命令行上做的那样使用 p4,除了有时会神奇地重新处理一些参数(添加新命令或调用不同的工具或其他什么),并且它总是感觉好像我只是使用普通的 p4 命令行。

这工作得很好,直到我开始使用像“-o”这样的参数。

p4 -p 1666 user -o scobi
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我从 PowerShell 收到错误消息:

p4 : Parameter cannot be processed because the parameter name 'o' is ambiguous. Possible matches include: -OutVariable -OutBuffer.
Run Code Online (Sandbox Code Playgroud)

我找到的唯一方法是引用我的参数:

p4 -p 1666 user '-o' scobi
p4 '-p 1666 user -o scobi'
Run Code Online (Sandbox Code Playgroud)

真恶心,这妨碍了我让这个函数成为 p4.exe 的透明超集的目标。

是否有我可以附加到我的函数的魔术属性,使其告诉外壳“我不支持通用参数”?或者还有其他方法可以解决这个问题吗?

powershell

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

Request.Cookies 中的双重 cookie

我在 global.asax 中有以下代码:

protected void Application_AuthenticateRequest(object sender, EventArgs e)
{
    if (Request.Cookies["AUTH"] != null)
    {
        FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(Request.Cookies["AUTH"].Value);

        HttpContext.Current.User = new MyPrincipal(ticket.Name);

        HttpCookie cookie = Request.Cookies["AUTH"];
        cookie.Expires = DateTime.Now.AddDays(30);

        Response.Cookies.Add(cookie);
    }
}
Run Code Online (Sandbox Code Playgroud)

它工作正常,但是当我检查 Request.Cookies 集合时,AUTH cookie 有 2 个条目,具有不同的值。怎么来的?

这是登录页面中认证过程的代码:

if (Account.Authenticate(login.Text, pass.Text))
{
    FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(login.Text, true, 43200);

    HttpCookie cookie = new HttpCookie("AUTH");
    cookie.Expires = DateTime.Now.AddDays(30);
    cookie.HttpOnly = true;
    cookie.Value = FormsAuthentication.Encrypt(ticket);

    Response.Cookies.Add(cookie);


    Response.Redirect(Page.Request.UrlReferrer.ToString());
}
Run Code Online (Sandbox Code Playgroud)

asp.net authentication cookies

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

如何处理规范化数据库中的标签?

我正在尝试规范化我正在构建的数据库。一方面是我有许多不同的测试,每个测试都可以有许多不同的标签。你会如何处理这件事?

您是否有一个带有标签的表格,然后对每次测试的标签数量进行限制?

我是数据库的新手,更不用说规范化的整个想法了,所以如果这是一个非常简单的问题,请原谅我。

mysql tags database-design normalization

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

Python GTK"入门"教程问题

我在编译pygtk网站上列出的PyGTK使用的基本且非常简单的例子时遇到了问题.

这是此站点的第一个示例:http: //www.pygtk.org/pygtk2tutorial/ch-GettingStarted.html

我的代码看起来像这样:

#!/usr/bin/env python

# example gtk.py

import pygtk
pygtk.require('2.0')
import gtk

class Base:
    def __init__(self):
        self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
        self.window.show()

    def main(self):
        gtk.main()

print __name__
if __name__ == "__main__":
    base = Base()
    base.main()
Run Code Online (Sandbox Code Playgroud)

并在调用python gtk.py后,我收到以下错误:

gtk main Traceback(最近一次调用last):文件"gtk.py",第19行,在base = Base()文件"gtk.py",第11行,在init self.window = gtk.Window(gtk.WINDOW_TOPLEVEL) AttributeError:'module'对象没有属性'Window'

我在某个地方发现了一个信息,它可以通过从源代码安装PyGTK来修复它.我做到了,但没有改变.消息仍然相同.

我正在使用ubuntu 10.10

对于什么可能出错,您有什么想法吗?谢谢你的帮助!

麦克风

python gtk pygtk

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

以下命令性代码的最有效功能版本是什么?

我正在学习Scala,我想知道使用Scala的函数编程功能表达这种命令式模式的最佳方式.

def f(l: List[Int]): Boolean = {
  for (e <- l) {
    if (test(e))
      return true
    }
  }
  return false
}
Run Code Online (Sandbox Code Playgroud)

我能想到的最好的是:

l map { e => test(e) } contains true
Run Code Online (Sandbox Code Playgroud)

但是效率较低,因为它在每个元素上调用test(),而命令式版本在第一个满足test()的元素上停止.是否有更惯用的函数式编程技术可以用于同样的效果?在Scala中,命令式版本似乎很尴尬.

functional-programming scala

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

关闭垃圾收集可以获得什么?

我正在阅读timeit模块的代码,我注意到了这一段:

gcold = gc.isenabled()
gc.disable()
timing = self.inner(it, self.timer)
if gcold:
    gc.enable()
Run Code Online (Sandbox Code Playgroud)

这只是存储垃圾收集的状态(打开或关闭),然后将其关闭.该函数inner执行正在计时的语句.然后它将垃圾收集器恢复到旧状态.

所以我很好奇这是什么意思.如果被测试的代码在垃圾收集器中运行,那么不应该在测试中反映出来吗?我错过了什么?

python garbage-collection timeit

4
推荐指数
2
解决办法
995
查看次数

选项卡上的不同关闭按钮

我正在使用 QTabWidget,我想知道是否可以使用不同的图标来关闭选项卡上的按钮?我认为 style 和 setCornerWidget 可能不适用于这种情况。

谢谢!

qt4 qtabbar

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

ASP.NET MVC - IsAjaxRequest()实际上意味着什么?

我以前在我的基本控制器上创建了一个方法:

public bool IsJsonRequest()
{
    var acceptTypes = Request.AcceptTypes;
    return acceptTypes != null && 
           acceptTypes.Any(a => a.Equals("application/json",
                                         StringComparison.OrdinalIgnoreCase));
}
Run Code Online (Sandbox Code Playgroud)

然后我偶然发现了AjaxRequestExtensions.IsAjaxRequest().它的文档非常模糊:

如果指定的HTTP请求是AJAX请求,则为true;否则为false.否则,错误.

这让我想到了,它使得它成为AJAX的HTTP请求是什么?它是否比检查请求者接受的内容类型还要多,或者编码不是"AJAX"的要求?

(请注意,在我的情况下,我的操作只能从我网站上的JS页面调用,而JSON是唯一必需的编码.)

.net ajax asp.net-mvc asp.net-mvc-3

23
推荐指数
2
解决办法
8785
查看次数

PHP检测谁打开了该页面

我用Google搜索了这个问题,但我找不到答案.

我有一个由PHP生成的页面,它生成一个JSON字符串,我使用javascript/jQuery/AJAX来检索它.

如果用户直接通过PHP打开此后端页面但是如果通过AJAX检索它仍然可以正常工作,我希望显示一条消息.

这在PHP中是否可行,我将要做什么呢?

javascript php ajax

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

asp.net mvc错误处理的最佳实践

我正在寻找一种标准方法来处理asp.net mvc 2.0或3.0中的错误

  • 404错误处理程序
  • Controller范围异常错误处理程序
  • 全局范围异常错误处理程序

error-handling asp.net-mvc

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