我对类AppServerSqlServerDataUtil使用远程处理。
配置文件:
客户端:
<configuration>
<system.runtime.remoting>
<application >
<client url="tcp://172.22.110.25:8086">
<activated type="DealsRoomDAL.AppServerSqlServerDataUtil, DealsRoomDAL"/>
</client>
<channels>
<channel ref="tcp" secure="true" >
<serverProviders>
<formatter ref="soap" typeFilterLevel="Full" />
<formatter ref="binary" typeFilterLevel="Full"/>
</serverProviders>
</channel>
</channels>
</application>
</system.runtime.remoting>
</configuration>
服务器:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.runtime.remoting>
<customErrors mode="off"/>
<application>
<service>
<activated type="DealsRoomDAL.AppServerSqlServerDataUtil, DealsRoomDAL"/>
</service>
<channels>
<channel ref="tcp" port="8086" secure="true" machineName="prblalsmtrbx.bnhpgroup.com" >
<clientProviders>
<formatter ref="soap" typeFilterLevel="Full" />
<formatter ref="binary" typeFilterLevel="Full"/>
</clientProviders>
</channel>
</channels>
</application>
</system.runtime.remoting>
</configuration>
我有一个函数将SqlCommand作为类AppServerSqlServerDataUtil上的参数
public object GetScalarValue(SqlCommand com)
{
...
}
当我尝试调用GetScalarValue时,我收到错误:
由于安全限制,无法访问System.Runtime.Remoting.ObjRef类型。
当我在AppServerSqlServerDataUtil上调用包含简单输入参数(如字符串)的其他函数时,没有问题。
答案 0 :(得分:0)
问题似乎与SqlCommand参数有关。 它不可序列化。 错误信息非常令人困惑。