问题标签 [convention-over-configur]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1521 浏览

wpf - Caliburn Micro:如何将 ActivateItem 绑定到导体中的 selectionEvents

从 SimpleMDI Caliburn Micro 项目中可以看出,有一些约定将 tabControls 中的 selectionEvent 绑定到 Conductor 中的 ActivateItem。我真的看不出有任何提及这个事件可能是什么。

但是,当您的控件不能满足这些约定时,我会迷失如何自己管理它们。

我有一个 Telerik RadTreeView,我想用一个导体来管理它,以便能够按需加载节点的子节点(通过 WCF 调用)。

这是我所在的位置:

传递 $dataContext 是错误的,因为这样他传递了 Conductor 本身,$SelectedItem 返回 null。

所以我相当简单的问题是三重的。

1)如果 RadTreeView 是一个选择器,为什么基本的 CM 约定不能使用它,

2) 我应该使用什么事件来调用 ActiveItem

3)我可以传递什么。

0 投票
2 回答
3250 浏览

asp.net-mvc - 在 ASP.NET MVC 中的控制器之前创建视图

我通过在 Views 文件夹下的解决方案中创建一个新文件夹来创建 Razor 视图,然后右键单击该文件夹并选择“添加视图”。

后来,我转到我的控制器文件夹并右键单击它,选择“添加控制器”。但是,现在我想将我创建的视图附加到我的控制器,当我这样做时,Visual Studio 无法识别我的视图存在:

如何让 Visual Studio 识别我已经存在的视图?我宁愿不使用 Resharper 创建我的 Razor 视图来解决问题(因为我已经创建了视图)。

提前致谢!

0 投票
3 回答
2207 浏览

javascript - 有什么方法可以在开发中使用 goog.require 并使用约定优于配置?

有什么方法可以使用 Google Closuregoog.require来管理 JS 依赖项,而不必在 dependencies.js 文件中显式注册每个命名空间?

我喜欢将编译器用于生产的想法,但对于开发,我想要命名空间到 JS 文件夹/路径的某种约定优于配置的转换,以便在开发模式下goog.require('myapp.module')自动导入myapp/module.js(如果尚未导入),在生产中,它们都被编译成一个文件。

我似乎记得以dojo.require这种方式工作的旧版本。知道 Google Closure 是否可以做同样的事情吗?

0 投票
1 回答
1117 浏览

nhibernate - NHibernate 约定模型映射器;IsRootEntity 和 IsEntity 有什么区别

我在玩 Sharp Architecture Lite,它强调约定优于配置,并试图了解 NHibernate是如何ConventionModelMapper工作的。具体来说,我无法区分下面的 IsRootEntity 和 IsEntity 方法(顺便说一句,Entity是 Sharp Arch 附带的抽象类):

我收集到该IsEntity方法用于告诉 NHibernate 哪些类有资格映射/持久化到数据库。但是,我一生都无法弄清楚该IsRootEntity方法的作用。周围的文档ConventionModelMapper非常稀少。

0 投票
2 回答
4951 浏览

ruby-on-rails - 在 Rails 项目中放置约束类的位置

只是对 Rails 的最佳实践感到好奇,我在其中放置了一个自定义约束类,该类用作 config/routes.rb 中的约束。似乎Rails.root/lib是所有用户类的去处。这适合这个吗?我应该在里面为约束创建一个目录吗?现在存在 2 个空目录,assets并且tasks. 有这方面的约定吗?

0 投票
0 回答
549 浏览

javascript - 如何在仍然使用 .js 扩展名的同时从 struts 2 操作创建 javascript 文件?

我有一些需要动态生成的 javascript 文件。它纯粹是 i18n 的东西,我使用 struts 2 约定插件。当我从 URL 和源文件中省略 .js 扩展名时,我可以成功地做到这一点,如下所示:

Convention Plugin 将命中这个 JSP:

使用此页面中的 URL:

但是,我想做的是:

请注意,唯一的区别是 url 和文件本身都有其原生 .js 扩展名。这样做的动机是避免混淆开发人员和工具。另请注意,另一个要求是其他 javascript 文件应作为静态资源提供。

0 投票
1 回答
113 浏览

unit-testing - NHibernate testing strategy: one test suite per root or per class/mapping

Given that most real world applications have fairly complicated relationships between entities, is there much value in testing individual class mappings? It seems that to be truly valuable, NHibernate tests should revolve around retrieving, persisting and deleting entire object graphs, starting at the aggregate root level (i.e. Customer-->Order-->OrderDetails). But if I go down that road, it seems I would have to test CRUD operations at every conceivable level in the object tree to validate that the "whole" works as expected; leading to an explosion of tests:

  • Delete a Customer
  • Delete an Order
  • Delete an OrderItem
  • Insert a Customer
  • Insert an Order
  • Insert an OrderItem

So, unless I'm missing something, which I very likely am, my choices are:

  1. Write one fixture suite per class/mapping
    • Pros: Simpler to write CRUD operations
    • Cons: Diminished test value, as they provide no assurance that entire aggregate roots are being persisted correctly
  2. Write one fixture suite per object graph
    • Cons: Tests harder to write/explosion of test scenarios
    • Pros: Higher value as tests since they test persistence from the application's perspective (i.e. testing mutations against the unified/integrated object graph)

If at all relevant, I'm using the NHibernate.Mapping.ByCode ConventionModelMapper to generate mappings using conventions.

0 投票
1 回答
224 浏览

.net - 使用 Caliburn.Micro 进行配置的约定和 .NET 中的代码混淆

我们正在考虑为我们的应用程序使用Caliburn.Micro和 Conventions over Configuration,但我担心代码混淆(我们需要分布式应用程序)会干扰命名约定。在没有实际尝试过的情况下,我认为我必须添加一组异常以避免重命名类/命名空间/字段/函数以启用约定。

您使用 Caliburn.Micro(或其他类似框架)进行混淆的经验是什么?是否有替代方法来使用在混淆上下文中更好地工作的命名约定(例如,创建类型的手动映射来进行映射)?

我们使用Crypto Obfuscator for .Net进行混淆。

0 投票
2 回答
1153 浏览

ruby-on-rails-3 - 在这样的控制器操作中使用 respond_to 块有什么问题吗?

我正在对现有的 Rails 3.2 应用程序进行 AJAX 化,并且从客户端发出的一些请求最好异步完成。为了促进这一点,并减少渲染时间,我通过警报向用户提供反馈。我的 application.html.erb 文件中有一个空白 div,我根据需要从某些控制器操作中添加警报,如下所示:

我的common/flashes文件只是使用 jQuery 来append向空白 div 发出警报。虽然它工作正常,但我从未见过像这样传递的警报,只能通过重定向。采用这种方法是否有任何不成文(或成文)的 Rails 约定或规则被打破?另外,有没有办法将其作为respond_with 来代替?我看不到如何从一行中进行两种不同类型的渲染。

0 投票
2 回答
4566 浏览

dependency-injection - 带有 funq 的 servicestack - 按照惯例自动装配

我有一个在其构造函数中采用 IMyDependency 的服务。IMyDependency、MyDependency 和服务都存在于同一个程序集中。MyDependency 有一个单一的、公共的、无参数的构造函数。

令我惊讶的是,这不起作用:

它抛出一个“System.NullReferenceException”。

如果我这样做,它会起作用:

但是,这样做也是如此:

那么区别是什么呢?如果“自动布线”找不到具体的实现,而需要依赖的服务能否解决也无济于事,那什么是自动布线?

Funq 是否应该能够按照惯例找到您的具体实现?如果是这样,该约定是什么,如果不是同名?

谢谢。