小编use*_*419的帖子

当搜索模式包含3个扩展字符时,.NET的Directory.GetFiles()中的奇怪功能

我最近碰到了微软的一个奇怪的功能:

假设我们的文件夹c:\tmp123包含3个文件 -
1.txt
2.txtx
3.txtxt

a)Directory.GetFiles(@"C:\tmp123", "*.txt")在3个退货项目中调用收益率.
b)Directory.GetFiles(@"C:\tmp123", "*.txtx")在1个退回的项目中调用收益率.

据微软称,这是预期的行为(参见MSDN中的注释).

我的问题是:

  1. 为什么微软决定拥有这样一个奇怪的功能?

  2. 我怎样才能克服这个问题?
    即我怎么有一个搜索模式,将返回*.txt唯一的扩展,而不是返回*.txtx,*.txtstarngefunctionality等?

.net system.io.directory getfiles

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

url ambiguity导致ui路由器两次实例化控制器

我正在使用下面的状态定义(UI-Router's).一旦我调用$ state.go('products.new'),控制器(ProductCtrl)就会被调用两次.

由于某种原因,UI路由器"忘记"原始状态更改并仅基于URL调用控制器(在这种情况下确实不明确).

如果我直接到达页面(深层链接),控制器将被调用一次.

有什么建议如何使其工作?

.state('products', {
    abstract: true,
    template: "<div ui-view></div>"
})

.state('products.product', {
    url: '/products/:productId',
    templateUrl: 'views/productView.html',
    controller: 'ProductCtrl'
})

.state('products.new', {
    url: '/products/new',
    templateUrl: 'views/productView.html',
    controller: 'ProductCtrl'
})
Run Code Online (Sandbox Code Playgroud)

javascript routing angularjs angular-ui-router

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