【发布时间】:2013-05-23 10:13:51
【问题描述】:
我的问题是,在对我正在处理的项目进行 tfs 更新后,我无法再进行任何测试。
在更新之前它有效,但现在我每次在我的测试类的Init() 方法中运行ContextRegistry.GetContext() 方法时都会得到一个Spring.Core.TypeMismatchException。
MyProjectDao 的唯一变化是其方法的变化和添加的属性。并且在 SpringContext.xml 中添加了一个服务。
这是我得到的例外:
System.Configuration.ConfigurationErrorsException: System.Configuration.ConfigurationErrorsException:创建错误 上下文'spring.root':PropertyAccessExceptionsException(1 个错误); 嵌套的 PropertyAccessExceptions 是:
[Spring.Core.TypeMismatchException:无法转换的属性值 键入 [CompositionAopProxy_f81c875c2f994f88bb773f5743050b67] 到 属性所需的类型 [MyProject.Dao.MyProjectDao] 'MyProjectDao'.,内部异常: Spring.Core.TypeMismatchException:无法转换属性值 [CompositionAopProxy_f81c875c2f994f88bb773f5743050b67] 类型的 属性所需的类型 [MyProject.Dao.MyProjectDao] “我的项目”。 在 Spring.Core.TypeConversion.TypeConversionUtils.ConvertValueIfNecessary(类型 requiredType, Object newValue, String propertyName) in f:\bamboo-home\xml-data\build-dir\SPRNET-RELEASE-JOB1\src\Spring\Spring.Core\Core\TypeConversion\TypeConversionUtils.cs:MyProject 211.] ---> Spring.Objects.Factory.ObjectCreationException:创建在“文件”中定义的名称为“MyProjectService”的对象时出错 [C:\Projects\MyProject\MyProject.NET\test\MyProject.Service.Test\bin\Debug\SpringContext.xml] 第 147 行:设置属性值时出错: PropertyAccessExceptionsException(1 个错误);嵌套的 PropertyAccessExceptions 是: [Spring.Core.TypeMismatchException:无法将 [CompositionAopProxy_f81c875c2f994f88bb773f5743050b67] 类型的属性值转换为 属性所需的类型 [MyProject.Dao.MyProjectDao] 'MyProjectDao'.,内部异常:Spring.Core.TypeMismatchException: 无法转换类型的属性值 [CompositionAopProxy_f81c875c2f994f88bb773f5743050b67] 为必需 为属性“MyProjectDao”键入 [MyProject.Dao.MyProjectDao]。在 Spring.Core.TypeConversion.TypeConversionUtils.ConvertValueIfNecessary(类型 requiredType, Object newValue, String propertyName) in f:\bamboo-home\xml-data\build-dir\SPRNET-RELEASE-JOB1\src\Spring\Spring.Core\Core\TypeConversion\TypeConversionUtils.cs:MyProject 211.] ---> Spring.Objects.PropertyAccessExceptionsException:PropertyAccessExceptionsException(1 个错误);嵌套的 PropertyAccessExceptions 是:[Spring.Core.TypeMismatchException: 无法转换类型的属性值 [CompositionAopProxy_f81c875c2f994f88bb773f5743050b67] 为必需 为属性“MyProjectDao”键入 [MyProject.Dao.MyProjectDao]。, 内部异常:Spring.Core.TypeMismatchException:不能 转换类型的属性值 [CompositionAopProxy_f81c875c2f994f88bb773f5743050b67] 为必需 为属性“MyProjectDao”键入 [MyProject.Dao.MyProjectDao]。 在 Spring.Core.TypeConversion.TypeConversionUtils.ConvertValueIfNecessary(类型 requiredType, Object newValue, String propertyName) in f:\bamboo-home\xml-data\build-dir\SPRNET-RELEASE-JOB1\src\Spring\Spring.Core\Core\TypeConversion\TypeConversionUtils.cs:MyProject 211.].
MyProjectDao 类如下所示:
namespace MyProject.Dao
{
[DataAccessObject]
[Transaction(TransactionPropagation.Mandatory)]
public class MyProjectDao : IMyProjectDao
{
public ISessionFactory SessionFactory { private get; set; }
// ... Methods ...
}
}
IMyProjectDao 接口:
namespace MyProject.Dao
{
public interface IMyProjectDao
{
// ... Methods ...
}
}
这是我的 SpringContext.xml 的一部分
<!-- ######################## -->
<!-- DAO -->
<!-- ######################## -->
<object id="MyProjectDao" type="MyProject.Dao.MyProjectDao, MyProject">
<property name="SessionFactory" ref="SessionFactory" />
</object>
<!-- ######################## -->
<!-- Service -->
<!-- ######################## -->
<object id="MyProjectService" type="MyProject.Service.MyProjectService, MyProject">
<property name="MyProjectDao" ref="MyProjectDao" />
<property name="PersistenceService" ref="PersistenceService" />
<property name="DeletedObjectCache" ref="DeletedObjectCache" />
</object>
【问题讨论】:
标签: c# nhibernate spring.net