我目前正在为今年春季计划的项目寻找不同的ORM解决方案.实体框架是我正在寻找的产品之一,但EF 2.0会更有趣.
是否有任何迹象表明何时计划发布实体框架2.0版?使用.Net 4.0?
在Unix C编程中,在进程退出之前显式关闭文件句柄是一种很好的做法,还是让操作系统关闭文件句柄从而避免不必要的代码?
通常会将两者中的哪一个视为首选替代方案?
例:
int main (int argc, char* argv[])
{
int sd;
sd = socket(...);
// Snip
close(sd); // Good or bad practice?
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我目前正在使用C/C++进行一些套接字编程.为了能够使用更简洁的界面和更多的OO结构,我决定围绕C套接字API的部分编写一些简单的包装类,但在这样做时我偶然发现了一个问题:
给出以下代码:
// Global method
int foo(int x)
{
return x;
}
// Class that calls the global method
class FooBar
{
public:
void foo() { return; };
void baz() { foo(1); }
};
Run Code Online (Sandbox Code Playgroud)
g ++给出以下错误消息:
test.cpp: In member function ‘void FooBar::baz()’:
test.cpp:10: error: no matching function for call to ‘FooBar::foo(int)’
test.cpp:9: note: candidates are: void FooBar::foo()
Run Code Online (Sandbox Code Playgroud)
重命名类方法可以解决问题.
为什么即使方法签名不同,也存在某种命名冲突?解决这个问题的最佳方法是什么?
谢谢/ Erik
您如何在HQL中表达以下Criteria查询?
var idArray = new int[] { 1, 2, 3, 4, 5 };
Session.CreateCriteria(typeof(Foo))
.Add(Expression.In("Id", idArray)
.List<Foo>();
Run Code Online (Sandbox Code Playgroud)
我知道HQL中有一个"in"关键字,但据我所知,该关键字用于子查询,而不是像"......(1,2,3,4,5)中的Id"或者这样的.如果情况并非如此,我很乐意接受更正.
谢谢/ Erik
是否有关于如何在数据库表的定义中对列进行排序的标准/约定,如果是,那么该标准的动机是什么?(优点缺点)
例如,主键应该是第一列吗?外键是否应该直接跟在主键之后,还是应该放在桌子的最右边?
如果不同DBMS的约定之间存在差异,则此情况下的DBMS是Microsoft SQL Server 2005.
谢谢/ Erik
你如何在Fluent NHibernate中映射以下内容?
参见"18.3.客户/订单/产品"
http://www.hibernate.org/hib_docs/nhibernate/html/example-mappings.html
c ×2
nhibernate ×2
c++ ×1
conventions ×1
criteria ×1
database ×1
filehandle ×1
fluent ×1
hibernate ×1
hql ×1
scope ×1
sql-server ×1
unix ×1