小编Kie*_*one的帖子

是否右键单击Javascript事件?

是否右键单击Javascript事件?如果是这样,我该如何使用它?

javascript

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

MVC4样式包给403

捆绑时/缩小时启用,我的一些捆绑的似乎都在浏览器(用/结束)无效的URL和IIS提供了一个403 Forbidden错误,好像试图列出文件夹中的内容.

我的捆绑设置方式没有区别 - 它们不是.min.css,访问权限是正确的等等.

.net asp.net-mvc razor asp.net-mvc-4 bundling-and-minification

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

WCF服务参考生成自己的合同接口,不会重用我的

我的第一个问题是希望它是合适的:

共享接口程序集 - 我有一个'共享'程序集,它有一个接口,我们可以调用它IDocRepository.它标有,[ServiceContract]并有几个[OperationContract]标记的方法.

WCF实现程序集 - 我有两个WCF服务项目,每个项目都引用共享程序集,每个项目都将该接口实现为WCF服务.

消费者组装 - 最后,我有一个'客户'项目,也引用了共享程序集,并引用了两个WCF服务.

但是,使用者程序集中生成的服务引用来自自动生成的接口版本:

public partial class ExampleClient : System.ServiceModel.ClientBase<SomeNamespace.ExampleSvcRef.IDocRepository>, SomeNamespace.ExampleSvcRef.IDocRepository {
Run Code Online (Sandbox Code Playgroud)

我所期望的
我希望两个引用都会自动继承我定义的接口,消费者/客户端程序集也引用它.有点像它为参数和返回类型提供的类的重用,但对于服务接口.

为什么
我可以创建一个服务引用代理的实例并将其转换为我的接口类型.

所以我每次都可以手工修改生成的代码,但应该有更好的方法......?

(编辑:我在两个服务引用中都选择了"在引用的程序集中重用类型"和"在所有引用的程序集中重用类型"选项)

c# wcf reference reusability

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

使用BlockingCollection <>:OperationCanceledException,有更好的方法吗?

我正在使用(坦率的)很棒的BlockingCollection<>类型,用于多线程,高性能的应用程序.

通过集合有很多吞吐量,在微观层面上它具有很高的性能.但是,对于每个"批次",它将始终通过标记取消令牌来结束.这导致在任何等待Take调用时抛出异常.这没关系,但是我会确定一个返回值或输出参数来表示它,因为a)异常有明显的开销,而b)在调试时,我不想手动关闭特定的break-on-exception例外.

实现似乎很激烈,理论上我认为我可以反汇编并重新创建我自己的版本,但没有使用异常,但也许有一种不太复杂的方式?

我可以null在集合中添加(或者如果不是,占位符)对象以表示进程应该结束,但是还需要有一种很好地中止的方法,即唤醒等待的线程并告诉他们某些事情已经发生了.

那么 - 替代收藏类型?重新创建自己的?有人滥用这个吗?

(某些上下文:BlockingCollection<>因为它优于手动锁定,因此它具有优势Queue.最好我可以告诉使用线程原语是极好的,在我的情况下,这里和那里几毫秒,最佳核心使用至关重要. )

编辑:我刚开了这个奖金. 我不相信Anastasiosyal的答案涵盖了我在评论中提出的问题.我知道这是一个棘手的问题.有人能协助吗?

c# multithreading blockingcollection

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

当状态发生变化时,如何防止在命名视图上重新加载?AngularJS UI-Router

ui-router在我的应用程序中使用了优秀的模块.作为其中的一部分,我使用命名视图来管理我在应用程序中的"动态子导航".

考虑以下:

$urlRouterProvider.otherwise('/person/list');

$stateProvider
    .state('person', {
        url: '/person',
        abstract: true,
    })
    .state('person.list', {
        url: '/list',
        views: {
            "main@": {
                templateUrl: "person.list.html",
                controller: 'PersonListController'
            }
        }
    })
    .state('person.details', {
        url: '/{id}',
        views: {
            'main@': {
                templateUrl: "person.details.html",
                controller: 'PersonController'
            },
            'nav@': {
                templateUrl: "person.nav.html",
                controller: 'PersonNavController'
            }
        }
    });
Run Code Online (Sandbox Code Playgroud)

当用户首次访问该应用时,会向他们显示一个人员列表.当他们点击某个人时,他们会被带到详细信息页面.很基本的东西.这是标记,如果它有帮助......

<div>
    <aside ui-view="nav"></aside>
    <div ui-view="main"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

但是,PersonNavController调用REST服务来获取人员列表,因此在查看人员时,用户可以导航兄弟元素.使用上述方法会导致模板和控制器重新渲染,从而导致每次点击后出现延迟,尽管内容永远不会改变.

有没有办法保持'nav@'视图加载,只刷新'main@'视图?

angularjs angular-ui-router

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

React:在层次结构中获取组件顺序

我正在尝试为CSS网格实现辅助组件.我喜欢(准备自己):

<ColumnContainer columns={[ "1em", "1fr", "auto", "auto", "1em", "auto"]}>
  <ColumnContainer.Row>
    { rowIdx => (
      <div style={{ gridRow: rowIdx, gridColumn: "1 / 3" }}>
      </div>
    )}
  </ColumnContainer.Row>
</ColumnContainer>
Run Code Online (Sandbox Code Playgroud)

ColumnContainer:

  • 是否设置了div具有display: grid各种网格属性的容器
  • 也是一个上下文提供者

然后,ColumnContainer.Row:

  • 基本上是上下文消费者
  • 作为一个孩子的功能
  • 不需要是直接的孩子ColumnContainer- 因此使用上下文

提供的上下文是一个整数,layoutVersion只要该行要更改(以触发重新呈现),并且 - 黑客攻击 - 一个空数组,它就会递增.

这个想法是,在每次ColumnContainer.Row渲染时,它将自身(可以是任何对象)添加到其上下文中传递引用的数组,并将子函数与数组的大小一起呈现为参数(行索引).

信不信由你,这适用于第一次渲染,如果行只是添加到最后.

但是,当组件添加到组件DOM的"中间"时,生成的渲染行是无序的(但不重叠).我认为,在新布局版本(重新渲染)的情况下,所有ColumnContainer.Rows都被重新渲染,但不一定是它们所处的"自然"顺序,即在DOM中.

我的猜测是,根据render()以某种顺序调用的组件是一个坏主意,以及修改上下文属性的内容render().

我还有什么选择 - 我真正想要的是了解组件树中后代节点的"自然"顺序.如果它们是直接子元素,我猜它会很容易 - 在我的情况下虽然我有嵌套的组件可以输出行.

javascript reactjs

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

创建MVVM友好对话策略

我正在尝试创建一个处理弹出窗体的策略,以便在我的应用程序的任何部分使用.到目前为止,我的理解是我需要UserControl在MainWindow的根目录中使用一个.这将绑定到自己的ViewModel,它将处理在应用程序中发送的消息.

我正在使用MVVM Light,而且我对这个Messenger课程还很陌生.

想象一下Master/Details场景,其中一个对象包含在一个列表中ListBox.选择其中一个项目并单击"编辑"按钮将显示UserControl覆盖整个屏幕的项目.然后,用户可以编辑所选项目,然后单击"确定"以提交更改.

我想要UserControl打开它是"通用的",我可以抛出任何(可能是一个ViewModel)...它通过a渲染ViewModel DataTemplate并处理所有对象的更改.单击"确定"将回调到发送类并像以前一样保留更改.

一些有用的情况是......

  1. 显示没有必需用户输入的错误消息(除了可以关闭它)
  2. 显示数据项的编辑表单
  3. 确认对话框(很像标准的MessageBox)

任何人都可以提供我如何实现这一点的代码示例吗?

c# wpf mvvm mvvm-light

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

如何从.NET中的内存映射文件中快速读取字节?

在某些情况下,MemoryMappedViewAccessor类只是没有削减它以有效地读取字节; 我们得到的最好的是通用ReadArray<byte>,它是所有结构的路由,当你需要字节时涉及几个不必要的步骤.

可以使用a MemoryMappedViewStream,但因为它基于Stream你需要首先寻找正确的位置,然后读操作本身有许多不必要的步骤.

是否有快速,高性能的方法从.NET中的内存映射文件读取字节数组,因为它应该只是地址空间的特定区域来读取?

.net c# memory-mapped-files

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

合并子树更改 - 致命:无效路径'somefile_BASE_20704.cs'

我有三个回购 - 名称已更改为清晰:

SharedStuff,ProjectAProjectB

这两个项目都使用git-subtree来维护本地副本SharedStuff.他们都进行了本地更改,我正在尝试集中合并,测试,然后再次合并到每个.

我在ProjectA回购中运行了这个:

git subtree split --prefix=SharedStuff -b SharedStuff_from_ProjectA --rejoin

...然后将其推送到SharedStuff回购,解决了一些简单的冲突,将其合并.

现在我在ProjectB repo上运行它:

git subtree split --prefix=platform/SharedStuff -b SharedStuff_from_Project_B --rejoin

......然后又把它推到了SharedStuff一个新的分支中.当我尝试合并这些更改时,会出现问题.

在当前的情况下,我切换到SharedStuff_from_Project_B分支,然后git merge master- 但我立即将所有更改的文件列为添加/添加冲突.当我运行时git mergetool,每个人都有这样的错误:

Merging:
somefile.xyz

Normal merge conflict for 'somefile.xyz':
  {local}: created file
  {remote}: created file
fatal: invalid path './somefile.xyz_BASE_20704.cs'
Run Code Online (Sandbox Code Playgroud)

(当然,如果我尝试相反的方式 - 合并SharedStuff_from_Project_Bmaster- 我得到相同类型的冲突,只是逆转.仍然添加/添加).

我的猜测是ProjectB的历史可能有问题,导致添加/添加的外观.不过我不确定如何进一步诊断 - 我该怎么办?

编辑:之前有一个子树"rejoin"提交ProjectB,但SharedStuff …

git git-merge git-subtree

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

假设DayOfWeek的数值是否安全?

我将星期几存储在数据库中,其中星期日= 1,星期一= 2等.

在来自数据库的查询中,我需要将日期转换为System.DayOfWeek.

根据MSDN:

此枚举中常量的值范围从DayOfWeek.SundayDayOfWeek.Saturday.如果强制转换为整数,则其值的范围从零(表示DayOfWeek.Sunday)到六(表示DayOfWeek.Saturday).

这意味着在我查询数据之后,我需要在将结果转换为之前减去1 DayOfWeek.

这样安全吗?
或者我是否需要担心DayOfWeek更改的数值?

c# enums

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