将Session Session字段绑定到System.Data.Linq.Binary

时间:2011-09-26 20:26:24

标签: .net asp.net linq linq-to-sql

这是一张图片,是Session中的一个字节数组。我似乎无法将它绑定到我的表中自动创建的模型,在我的DataContext中。我正在尝试使用具有指定类型的FormView和ObjectDataSource。

一些示例代码:

<ObjectDataSource [...] DataObjectTypeName="MyTypeName" >

    <UpdateParameters>
        <asp:SessionParameter Name="MyClassPropName" SessionField="MySessionFieldName" />
    </UpdateParameters>

    <InsertParameters>
        <asp:SessionParameter Name="MyClassPropName" SessionField="MySessionFieldName" />
    </InsertParameters>

</ObjectDataSource>

我已尝试在参数上直接为TypeName属性指定一些类型,但它也不起作用。

问题是指定绑定到Session字段的属性始终为null,包含两个操作(Insert和Update)。而且我确定我的Session字段有一些值,在这种情况下,它是一个字节数组。我是否必须将会话字段命名为我的类'Property?

的名称

这是Linq.Binary数据类型的问题还是将会话字段绑定到指定的DataObjectTypeName?

帮助?

1 个答案:

答案 0 :(得分:0)

由于我无法使用Binarybyte[]将业务类绑定到会话字段,因此我只是将属性类型从Binary更改为byte[]并执行了此操作手动对ObjectDataSource的更新和插入事件,使用相同的处理程序方法,如下所示:

MyBusinessClass foo = (MyBusinessClass)e.InputParameters["BusinessClass"];
foo.Photo = (byte[])Session["MyImage"];