首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查找LinFu代理对象的目标

查找LinFu代理对象的目标
EN

Stack Overflow用户
提问于 2010-02-21 06:59:09
回答 2查看 372关注 0票数 1

这几乎是一个重复的问题,但我使用的不是Castle Dynamic Proxy,而是LinFu Getting underlying type of a proxy object

我正在使用自动映射程序创建接口代理,并将其发送到Asp.net MVC中的视图模型。我的问题是,根据我的判断,MVC的默认MetadataProvider通过在模型上调用.GetType()来查找属性和元数据。

因此,EditorFor()和DisplayFor()模板不会生成任何字段。我需要做的是找到代理目标类型,然后生成我的模板。我知道我可以解析名称并使用GetType( "thename“),但我想知道是否有一种简单的方法。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-03-01 05:45:47

LinFu.DynamicProxy不直接公开代理的底层对象。它只是将每个方法调用重定向到一个IInterceptor实现实例。为了访问底层对象,您必须确定当前拦截器实例是否实际具有目标类实例。

如果你在使用AutoMapper,AFAIK,他们使用LinFu.DynamicObject来做大量的鸭子绑定,在LinFu.DynamicObject生成的动态类型上调用GetType()甚至不会得到域模型中的实际类型-它只会得到一个由LinFu本身直接打包在一起的对象。

票数 1
EN

Stack Overflow用户

发布于 2010-02-22 19:39:47

获取最新的AutoMapper -它使用Castle Dynamic Proxy,您已经知道如何从那里获取它:)

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2304091

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档