我希望Ruby on Rails中的JSON输出"漂亮"或格式良好.
现在,我打电话to_json
,我的JSON全部在一条线上.有时,如果JSON输出流中存在问题,则很难看到.
有没有办法配置或方法使我的JSON在Rails中"漂亮"或格式良好?
我发现我的构造函数开始看起来像这样:
public MyClass(Container con, SomeClass1 obj1, SomeClass2, obj2.... )
Run Code Online (Sandbox Code Playgroud)
随着参数列表不断增加.由于"容器"是我的依赖注入容器,为什么我不能这样做:
public MyClass(Container con)
Run Code Online (Sandbox Code Playgroud)
每个班级?有什么缺点?如果我这样做,感觉我正在使用一个美化的静电.请分享您对IoC和依赖注入疯狂的看法.
c# java dependency-injection ioc-container inversion-of-control
我是一名C#/ Windows Forms程序员,拥有超过5年的经验.我一直在使用MVVM(Model-View-ViewModel)设计模式研究WPF.我在互联网上搜索了教程.我甚至看过杰森·多林格的全部精彩视频.虽然我找到了很多,但我没有找到一个从头到尾带我的人.我真正想要的是一个不承担任何以前的WPF知识的教程.
您最喜欢哪些WPF-MVVM教程可以帮助您学习?
我想在Google App Engine上创建一个RESTful应用程序.我想提供XML和JSON服务.我简要地试过了Restlet,Resteasy和Jersey.除了Restlet中的一些简单示例之外,我没有取得任何成功.
您能否分享使用Java在Google App Engine上创建Restful Web应用程序的经验,或者提供有关GAE上述工具包的任何见解?
谢谢!
编辑(2009-07-25):
我决定暂时使用Restlet.到目前为止似乎完美无瑕.请发布您可能拥有的任何其他见解/意见.你遇到了什么问题?你在GAE/J上成功使用过Jersey/Restlet/Resteasy吗?如果是这样,我们想听听它!
我喜欢MVVM.我不喜欢它,但喜欢它.大部分都是有道理的.但是,我一直在阅读鼓励你编写大量代码的文章,这样你就可以编写XAML而不必在代码隐藏中编写任何代码.
让我给你举个例子.
最近我想将我的ViewModel中的命令连接到ListView MouseDoubleClickEvent.我不太清楚该怎么做.幸运的是,谷歌拥有一切的答案.我找到了以下文章:
虽然这些解决方案有助于我理解命令,但也存在问题.上述一些解决方案使WPF设计器无法使用,因为在依赖属性之后附加"内部"的常见黑客攻击; WPF设计师找不到它,但CLR可以.一些解决方案不允许多个命令到同一控件.一些解决方案不允许参数.
经过几个小时的实验,我决定这样做:
private void ListView_MouseDoubleClick(object sender, MouseButtonEventArgs e) {
ListView lv = sender as ListView;
MyViewModel vm = this.DataContext as MyViewModel;
vm.DoSomethingCommand.Execute(lv.SelectedItem);
}
Run Code Online (Sandbox Code Playgroud)
所以,MVVM纯粹主义者,请告诉我这有什么问题?我仍然可以单独测试我的命令.这看起来非常实用,但似乎违反了"ZOMG ...你的代码隐藏代码!!!!"的指导原则 请分享你的想法.
提前致谢.
我开始在我的一些C#算法中使用一些LinkedList而不是Lists来希望加速它们.但是,我注意到他们感觉速度慢了.像任何优秀的开发者一样,我认为我应该尽职尽责并验证我的感受.所以我决定测试一些简单的循环.
我认为用一些随机整数填充集合应该就足够了.我在调试模式下运行此代码以避免任何编译器优化.这是我使用的代码:
var rand = new Random(Environment.TickCount);
var ll = new LinkedList<int>();
var list = new List<int>();
int count = 20000000;
BenchmarkTimer.Start("Linked List Insert");
for (int x = 0; x < count; ++x)
ll.AddFirst(rand.Next(int.MaxValue));
BenchmarkTimer.StopAndOutput();
BenchmarkTimer.Start("List Insert");
for (int x = 0; x < count; ++x)
list.Add(rand.Next(int.MaxValue));
BenchmarkTimer.StopAndOutput();
int y = 0;
BenchmarkTimer.Start("Linked List Iterate");
foreach (var i in ll)
++y; //some atomic operation;
BenchmarkTimer.StopAndOutput();
int z = 0;
BenchmarkTimer.Start("List Iterate");
foreach (var i in list)
++z; //some atomic operation; …
Run Code Online (Sandbox Code Playgroud) 我在node.js中运行它:
> x = { 'foo' : 'bar' }
{ foo: 'bar' }
> console.log(x)
{ foo: 'bar' }
undefined
> console.log("hmm: " + x)
hmm: [object Object]
undefined
Run Code Online (Sandbox Code Playgroud)
我不明白的是为什么console.log(x)
"漂亮地打印"对象,而字符串连接"丑陋打印"它.更重要的是,什么是打印的最佳方式hmm: { foo: 'bar' }
?
我有一个Rails应用程序,不幸的是在向控制器发出请求之后,需要做一些需要一段时间的运算.Rails中为长期运行的任务或请求提供反馈或进度的最佳做法是什么?这些控制器方法通常持续60秒以上.
我不关心客户端......我计划每隔一秒左右发出一次Ajax请求并显示进度指示器.我只是不确定Rails最佳实践,我是否创建了一个额外的控制器?我能做些什么聪明的事吗?我希望只使用Rails专注于服务器端的答案.
在此先感谢您的帮助.
编辑:
如果重要,http请求适用于PDF.然后我将Rails与Ruport一起生成这些PDF.问题是,这些PDF非常大并且包含大量数据.使用后台任务仍然有意义吗?假设平均PDF需要大约一分钟到两分钟,这会使我的Rails应用程序在此期间对任何其他服务器请求没有响应吗?
编辑2:
好的,经过进一步调查后,似乎我的Rails应用程序确实没有响应任何其他HTTP请求后请求大型PDF. 所以,我想现在的问题是:什么是最好的线程/后台机制? 它必须稳定并保持稳定.我很惊讶Rails没有内置的东西.
编辑3:
我已阅读此页:http://wiki.rubyonrails.org/rails/pages/HowToRunBackgroundJobsInRails.我很想阅读有关这些工具的各种经验.
编辑4:
如果重要的话,我正在使用Passenger Phusion"modrails".
编辑5:
我正在使用Windows Vista 64位开发机器; 但是,我的生产机器是Ubuntu 8.04 LTS.我应该考虑为我的开发机器切换到Linux吗?解决方案是否适用于两者?
每次我为iPhone应用程序更改UI时,我都厌倦了拍摄新截图.我希望能够运行脚本/程序/无论在模拟器上加载我的二进制文件,然后拍摄一些截图.
解决方案可以是任何语言......对我来说无关紧要.
谢谢!
我希望绑定到我的可观察集合的WPF Datagrid在底部有一个空行,以便用户可以添加更多信息.我已成功绑定数据,即我可以看到它.
为什么"新"空白行没有显示?这是我的xaml声明:
<UserControl.Resources>
<CollectionViewSource x:Key="MyItems" Source="{Binding Path=AllItems}">
</CollectionViewSource>
</UserControl.Resource>
<my:DataGrid HorizontalAlignment="Stretch"
AutoGenerateColumns="True"
SelectionUnit="FullRow"
CanUserAddRows="True"
CanUserDeleteRows="True"
DataContext="{StaticResource MyItems}"
ItemsSource="{Binding}">
Run Code Online (Sandbox Code Playgroud)
PS:我正在使用Josh Smith的MVVM实现.我也读过一些关于这个问题的SO 帖子,但他们没有帮助.
提前致谢.
更新2010-01-14:
当usercontrol load事件发生时,"CanUserAdddRows"为false.我怀疑这与这里列出的条件有关.
c# ×5
.net ×3
mvvm ×3
wpf ×3
java ×2
pretty-print ×2
ruby ×2
datagrid ×1
iphone ×1
javascript ×1
jersey ×1
json ×1
linked-list ×1
list ×1
node.js ×1
performance ×1
rest ×1
restlet ×1