有没有办法将域对象和映射文件分成两个单独的项目?我想创建一个名为MyCompany.MyProduct.Core的项目,其中包含我的域模型,另一个名为MyCompany.MYProduct.Data.Oracle的项目包含我的Oracle数据映射.但是,当我尝试单元测试时,我收到以下错误消息:
找不到命名查询"GetClients".
这是我的映射文件:
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly="MyCompany.MyProduct.Core"
namespace="MyCompany.MyProduct.Core"
>
<class name="MyCompany.MyProduct.Core.Client" table="MY_CLIENT" lazy="false">
<id name="ClientId" column="ClientId"></id>
<property name="ClientName" column="ClientName" />
<loader query-ref="GetClients"/>
</class>
<sql-query name="GetClients" callable="true">
<return class="Client" />
call procedure MyPackage.GetClients(:int_SummitGroupId)
</sql-query>
</hibernate-mapping>
Run Code Online (Sandbox Code Playgroud)
这是我的单元测试:
try
{
var cfg = new Configuration();
cfg.Configure();
cfg.AddAssembly( typeof( Client ).Assembly );
ISessionFactory sessionFactory = cfg.BuildSessionFactory();
IStatelessSession session = sessionFactory.OpenStatelessSession();
IQuery query = session.GetNamedQuery( "GetClients" );
query.SetParameter( "int_SummitGroupId", 3173 );
IList<Client> clients = query.List<Client>();
Assert.AreNotEqual( 0, clients.Count );
}
catch( Exception ex )
{
throw …
Run Code Online (Sandbox Code Playgroud) 我需要从存储过程迭代一个记录集,并使用每个字段作为参数执行另一个存储过程.我无法在代码中完成此迭代.我在互联网上找到了样本,但它们似乎都在处理一个计数器.我不确定我的问题是否涉及柜台.我需要T-SQL等同于foreach
目前,我的第一个存储过程将其记录集存储在临时表#mytemp中.我假设我会像这样调用辅助存储过程:
while (something)
execute nameofstoredprocedure arg1, arg2, arg3
end
Run Code Online (Sandbox Code Playgroud) 我有一个搜索屏幕,下面使用JSF,JBoss Seam和Hibernate.有和,列的列A
,关系如下:B
C
A (1< --; >*) B (1< --; >*) C
Run Code Online (Sandbox Code Playgroud)
假设A
有一个List< B >
并且B
有一个List< C >
(两个关系都是一对多).
UI表支持按任何列(ASC或DESC)排序,因此我希望对查询结果进行排序.这就是我在模型中使用Lists的原因.
但是,我得到一个例外,即Hibernate不能急切地获取多个行李(它认为两个行李都是行李).有一个有趣的博客文章在这里,和他们确定了以下解决方案:
我将List更改为Set,顺便提一下,模型方面更正确.
PersistentSet
Hibernate返回的包装HashSet
,没有排序.因此,当我在UI中迭代它时,顺序是随机的,无论数据库的顺序如何.PersistentSet
身体包裹LinkedHashSet
,里面有订货,并且是我想什么.但是,该OrderBy
属性是硬编码的,并且优先于我使用集合(链接)或HQL(链接)设置的任何顺序.因此,我通过UI请求的所有其他排序都在它之后.我再次尝试Sets
使用SortedSet
(和它的实现TreeSet
),但我有一些问题:
我想要在DB中进行排序,而不是在内存中,这是TreeSet
通过比较器或通过元素的Comparable接口进行的.
我发现有一个Hibernate注释@Sort,它有一个SortOrder.UNSORTED
,你也可以设置一个比较器.我还没有设法让它编译,但我仍然不相信它是我需要的.
其中一个要求是在DB中进行排序.
创建了一个简单的Maven项目并将其作为Google Code项目提交.这是我个人解决问题的方法.
我对编程很新,我有一个问题请帮助我.(这个问题是java问题,但我不记得语法,但我在这里写的主要是它.)
A class Person speaks "i am a person"
A class Student speaks "i am a student"
Student extends from Person
Person p = new Student
Run Code Online (Sandbox Code Playgroud)
那说什么是p呢?
我如何在c#中创建别名
采取这种情况
class CommandMessages
{
string IDS_SPEC1_COMPONENT1_MODULE1_STRING1;
}
Run Code Online (Sandbox Code Playgroud)
说我创建了这个类的对象
CommandMessages objCommandMessage = new CommandMessages();
Run Code Online (Sandbox Code Playgroud)
我需要写冗长的字符串
objCommandMessage.IDS_SPEC1_COMPONENT1_MODULE1_STRING1
Run Code Online (Sandbox Code Playgroud)
每次我访问变量时,这都是一个痛苦,因为我使用此变量作为字典的键.
Dict[objCommandMessage.IDS_SPEC1_COMPONENT1_MODULE1_STRING1]
Run Code Online (Sandbox Code Playgroud)
因此我应该可以做这样的事情
Dict[str1]
Run Code Online (Sandbox Code Playgroud)
其中str1是objCommandMessage.IDS_SPEC1_COMPONENT1_MODULE1_STRING1的别名,我该怎么做?
我需要调试作为DLL提供给主项目(ASP.NET网站)的类库项目.例如,我需要设置一些断点以检查执行期间发生的情况.
我试过如何:从DLL项目调试,不幸的是它没有用...
我该怎么做?
PS:我有源代码!
我正在定制一个封闭的源客户端应用程序.它在UI中有一个树,只暴露了一个获取所选节点的方法.它返回TreeNode的子类.并且无法获得对父树的引用.现在我想将所选节点扩展到它的叶子.
有没有办法从DefaultMutableTreeNode获取对JTree组件的引用?我打算使用JTree.expandPath(),但我只引用了treenode.
我是Swing的新手,欢迎任何有关实现这一目标的建议.
<span class="stbuttontext" st_page="home">ShareThis</span>
Run Code Online (Sandbox Code Playgroud)
我想将"分享这个"改为"分享",
请让我知道解决方案.
thanksl,
有没有人知道一个很好的链接来解释如何使用web.config ......
例如,我正在使用表单身份验证...我注意到有一个system.web然后它关闭/system.web然后在配置下面有其他位置标记
这里有一个例子,如果你需要有一个身份验证模式=具有授权的表单我认为这是ROOT .......它也是一个自包含在system.web ....下面有更多的位置=使用system.web标签....
我从来没有真正理解我在做什么..我已经尝试过检查MSDN文档,但我仍然不完全理解....
有人可以帮忙吗?
如果您注意到我的示例....一切都存储在1 web.config中...我认为标准的waas创建一个标准的web.config然后在我希望保护它的目录中创建另一个web.config .. ???
<configuration>
<system.web>
<compilation debug="true" strict="false" explicit="true" targetFramework="4.0" />
<authentication mode="Forms">
<forms loginUrl="Login.aspx" defaultUrl="Login.aspx" cookieless="UseCookies" timeout="60"/>
</authentication>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
<location path="Forms">
<system.web>
<authorization>
<deny users="?"/>
<allow users="*"/>
</authorization>
</system.web>
</location>
<location path="Forms/Seguridad">
<system.web>
<authorization>
<allow roles="Administrador"/>
<deny users="?"/>
</authorization>
</system.web>
</location>
Run Code Online (Sandbox Code Playgroud)