gpt4 book ai didi

asp.net-mvc - Spring.Net,Nhibernate,ASP.NET MVC3 CannotLoadObjectTypeException

转载 作者:行者123 更新时间:2023-12-02 03:56:13 25 4
gpt4 key购买 nike

[CannotLoadObjectTypeException: Cannot resolve type [Jtx.Service.Implement.UserManager,Jtx.Service] for object with name 'UserManager' defined in assembly [Jtx.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null], resource [Jtx.Web.Config.Controllers.xml] line 3]
Spring.Objects.Factory.Support.AbstractObjectFactory.ResolveObjectType(RootObjectDefinition rod, String objectName) in c:\_prj\spring-net\trunk\src\Spring\Spring.Core\Objects\Factory\Support\AbstractObjectFactory.cs:1100
Spring.Objects.Factory.Support.DefaultListableObjectFactory.PreInstantiateSingletons() in c:\_prj\spring-net\trunk\src\Spring\Spring.Core\Objects\Factory\Support\DefaultListableObjectFactory.cs:472
Spring.Context.Support.AbstractApplicationContext.Refresh() in c:\_prj\spring-net\trunk\src\Spring\Spring.Core\Context\Support\AbstractApplicationContext.cs:1017
Spring.Context.Support.WebApplicationContext..ctor(WebApplicationContextArgs args) in c:\_prj\spring-net\trunk\src\Spring\Spring.Web\Context\Support\WebApplicationContext.cs:125
Spring.Context.Support.WebApplicationContext..ctor(String name, Boolean caseSensitive, String[] configurationLocations) in c:\_prj\spring-net\trunk\src\Spring\Spring.Web\Context\Support\WebApplicationContext.cs:82
_dynamic_Spring.Context.Support.WebApplicationContext..ctor(Object[] ) in c:\_prj\spring-net\trunk\src\Spring\Spring.Web\Caching\AspNetCache.cs:126
Spring.Reflection.Dynamic.SafeConstructor.Invoke(Object[] arguments) in c:\_prj\spring-net\trunk\src\Spring\Spring.Core\Reflection\Dynamic\DynamicConstructor.cs:116
Spring.Context.Support.RootContextInstantiator.InvokeContextConstructor(ConstructorInfo ctor) in c:\_prj\spring-net\trunk\src\Spring\Spring.Core\Context\Support\ContextHandler.cs:563
Spring.Context.Support.ContextInstantiator.InstantiateContext() in c:\_prj\spring-net\trunk\src\Spring\Spring.Core\Context\Support\ContextHandler.cs:508
Spring.Context.Support.ContextHandler.InstantiateContext(IApplicationContext parentContext, Object configContext, String contextName, Type contextType, Boolean caseSensitive, String[] resources) in c:\_prj\spring-net\trunk\src\Spring\Spring.Core\Context\Support\ContextHandler.cs:351
Spring.Context.Support.WebContextHandler.InstantiateContext(IApplicationContext parent, Object configContext, String contextName, Type contextType, Boolean caseSensitive, String[] resources) in c:\_prj\spring-net\trunk\src\Spring\Spring.Web\Context\Support\WebContextHandler.cs:127
Spring.Context.Support.ContextHandler.Create(Object parent, Object configContext, XmlNode section) in c:\_prj\spring-net\trunk\src\Spring\Spring.Core\Context\Support\ContextHandler.cs:289

服务.xml

<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns="http://www.springframework.net">
<object id="UserManager" type="Jtx.Service.Implement.UserManager,Jtx.Service" parent="BaseTransactionManager">
<property name="CurrentRepository" ref="UserRepository"/>
</object>
</objects>

UserManager.cs

using System.Collections.Generic;
using System.Linq;
using Jtx.Domain.Entity;

namespace Jtx.Service.Implement
{
public class UserInfoManager : GenericManagerBase<User>, IUserManager
{
public IList<User> LoadAllByPage(out long total, int page, int rows, string order, string sort)
{
...
}
private string HashCode(string key)
{
...
}

public override object Save(User entity)
{
...
}

public User Get(string account)
{
...
}

public User Get(string account, string password)
{
...
}

public void Update(User entity, string password)
{
...
}
}

}

enter image description here

enter image description here

Web.config

  <!--spring-->
<spring>
<parsers>
<parser type="Spring.Data.Config.DatabaseNamespaceParser, Spring.Data"/>
<parser type="Spring.Transaction.Config.TxNamespaceParser, Spring.Data"/>
</parsers>
<context>
<!--Dao-->
<resource uri="assembly://Jtx.Dao/Jtx.Dao.Config/DaoBase.xml" />
<resource uri="assembly://Jtx.Dao/Jtx.Dao.Config/Dao.xml" />
<!--Service-->
<resource uri="assembly://Jtx.Service/Jtx.Service.Config/ServiceBase.xml" />
<resource uri="assembly://Jtx.Service/Jtx.Service.Config/Service.xml" />
<!--Web-->
<resource uri="assembly://Jtx.Web/Jtx.Web.Config/Controllers.xml" />
<resource uri="config://spring/objects"/>
</context>
<objects xmlns="http://www.springframework.net"/>
</spring>

我在 vs2010 的 asp.net mvc3 项目中使用 spring.net 1.3.2 和 NHibernate 3.2。当我调试时,只有 <resource uri="assembly://Jtx.Service/Jtx.Service.Config/Service.xml" /> error.当你把这句去掉,再重新调试就ok了。但是我检查了没有发现任何错误。同时,我引用CannotLoadObjectTypeException in Spring.net ,也没有发现错误。

问题好像有点乱,我想尽可能准确,尽可能多地提供信息。

最佳答案

service.xml中的类型是type="Jtx.Service.Implement.UserManager,Jtx.Service",而usermanager.cs中的类型是UserInfoManager。你能看出区别吗:

xml : Jtx.Service.Implement.UserManager
code: Jtx.Service.Implement.UserInfoManager

将 xml 更改为 type="Jtx.Service.Implement.UserInfoManager, Jtx.Service" 应该可以解决问题。

当使用带有 xml 配置的 spring.net 时,这些事情总是会发生。通常,(巨大的)异常的第一行给出了最好的提示。在我看到您的 xml 中的错误之前,我不得不寻找一分钟。

关于asp.net-mvc - Spring.Net,Nhibernate,ASP.NET MVC3 CannotLoadObjectTypeException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12525992/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com