我有一个由以下类表示的文件夹层次结构:
public class Folder
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual Folder ParentFolder { get; set; }
public virtual ICollection<Folder> SubFolders { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
换句话说,每个都Folder可以属于一个ParentFolder,也可以属于SubFolders它.我正在使用Fluent NHibernate Automapper并使用自动生成数据库模式SchemaExport.当我尝试保存一些测试文件夹时,我得到下表:
Id | Name | ParentFolder_id | Folder_id
----------------------------------------------------------------
1 | Root Folder (has children) | NULL | NULL
2 | Root Folder (no children) | NULL | NULL
3 | …Run Code Online (Sandbox Code Playgroud) 我想为一个模型保存几条记录.saveAll()如果不是出现问题,这很容易做到:
我有一个通知表单,我从a <select>和两个字段中分别选择主题和内容的多个用户.现在,当我输出$this->data包含的内容时,我有:
Array([Notification] => Array
(
[user_id] => Array
(
[0] => 4
[1] => 6
)
[subject] => subject
[content] => the-content-here
)
)
Run Code Online (Sandbox Code Playgroud)
我读过Cake 1.3的书,为了保存模型的多个记录,你必须得到$this->data类似的东西:
Array([Article] => Array(
[0] => Array
(
[title] => title 1
)
[1] => Array
(
[title] => title 2
)
)
)
Run Code Online (Sandbox Code Playgroud)
那么,我如何"分享"所有选定用户的主题和内容?
std::list<Node *> lst;
//....
Node * node = /* get from somewhere pointer on my node */;
lst.remove(node);
Run Code Online (Sandbox Code Playgroud)
std :: list :: remove方法是否调用每个被删除元素的析构函数(和空闲内存)?如果是,我怎么能避免呢?
采用以下格式:
3D:F2:C9:A6:B3:4F
Run Code Online (Sandbox Code Playgroud)
要么:
3D-F2-C9-A6-B3-4F
Run Code Online (Sandbox Code Playgroud) 使用Tomcat 6.0.x,我们可以使用Http11NioProtocol并获得可扩展的性能.使用Http11NioProtocol是否有任何特定的原因/缺点,Tomcat没有使用此协议作为默认协议?
Java 图像 API 假设异步加载。各种方法将 ImageObserver 作为参数,一旦图像完全加载,可能会得到通知。
另一方面,某些类型的图像(例如 BufferedImages)不使用 ImageObserver 并且永远不会调用它。
那么等待图像完全加载的代码看起来如何呢?
我想要一个方法
public void waitUntilLoaded(Image img){
...
}
Run Code Online (Sandbox Code Playgroud)
这保证了图像在返回时完全加载。
我在程序中使用了很多不同的记录,其中一些使用相同的字段名称,例如
data Customer = Customer { ..., foo :: Int, ... }
data Product = Product { ..., foo :: Int, ... }
Run Code Online (Sandbox Code Playgroud)
现在,由于访问器函数"foo"被定义了两次,我得到"多个声明"错误.避免这种情况的一种方法是使用完全限定导入的不同模块,或者只是重命名字段(我不想这样做).
在Haskell处理这个问题的官方建议方法是什么?
我收到整数用户输入的小时,分钟和秒.
现在,当我尝试使用DateTime.Parse和DateTime.TryParse AND Convert.ToDateTime时,它们都返回正确的小时/分钟/秒; 但是,它也会返回日期(年,月,日等).
string a = this.hours.ToString() + ":" + this.minutes.ToString() + ":" + this.seconds.ToString();
this.alarm = new DateTime();
this.alarm = DateTime.ParseExact(a, "H:m:s", null);
Run Code Online (Sandbox Code Playgroud)
假设小时是05,小时是21秒,秒是50."a"将是05:21:50.我希望"闹钟"是05:21:50.但是,它实际上是(可能):
11/23/10 05:21:50
Run Code Online (Sandbox Code Playgroud)
有没有办法让它正常工作?提前致谢.
人们使用Clojure的真实应用是什么?
我使用Groovy作为胶水,Java用于大型系统,Python/Perl脚本用于解析和粘合.我可以看到自己从Java调用Clojure,但我无法看到我自己在哪里使用它.令我感到震惊的是,几乎任何脚本语言都可以更容易地用于特殊任务.
无论如何我不是Groovy专家或粉丝,但它让我觉得它有更好的支持框架,工具和许多语言结构(闭包,函数式编程).Scala也是如此.
难道它的未来是作为嵌入其他系统的语言吗?
我试图理解weave.inline在我的Python程序中包装C代码.下面的代码简单地使用Numpy数组并将其所有元素乘以2.
inl.py
import numpy
import scipy.weave
a = numpy.array([1.0, 2.0, 3.0])
N = a.shape[0]
print a
code = \
"""
int i;
for(i = 0; i < N; i++)
{
a[i] = a[i] * 2;
}
"""
scipy.weave.inline(code, ['a','N'])
print a
Run Code Online (Sandbox Code Playgroud)
然后我想将内联代码中的一些函数传递给外部库.让它成为2的琐碎乘法.所以我创建了两个文件:
mult.c
#include "mult.h"
float mult(float n)
{
return n * 2;
}
Run Code Online (Sandbox Code Playgroud)
mult.h
float inc(float n);
Run Code Online (Sandbox Code Playgroud)
现在我想在我的内联代码中使用函数mult.但我不知道如何将我的C文件与Python内联代码链接起来.我试图将C文件编译为共享库,并将它们作为头文件和库传递,但这是徒劳的.有什么建议?