小编E.L*_*unn的帖子

实体框架4.3 beta [Column(TypeName)]问题,无法创建xml类型的列

我知道这是一个测试版(刚刚检查了新版本的EF 4.3并且它做了同样的事情)发布并且某些功能可能会丢失,但我没有看到任何解释原因...

[Column(TypeName = "xml")]
public string SomeProperty { get; set; }
Run Code Online (Sandbox Code Playgroud)

...当使用EF 4.3(列创建为nvarchar(max))时,不再创建xml类型的列,我已经尝试了EF 4.2并且创建了列就好了.仅供参考我连接到sql server 2008r2并且还尝试了快递版.我使用XML来存储不断变化的数据模式的数据,并且我理解这将作为字符串传回我需要能够针对sql中的xml数据创建存储过程.我也尝试使用.HasDataType( )方法没有运气.

另外,我可以创建varchar并且我相信nchar类型,但不是ntexttext使用相同方法的类型.

所以我真正的问题是:

  1. 我应该能够在EF 4.3中创建xml类型的列吗?
  2. 为什么我不能?
  3. 有没有正确的方法/解决方法来实现这一目标?

.net c# entity-framework

13
推荐指数
1
解决办法
539
查看次数

无法序列化泛型类型'System.Windows.FreezableCollection`

希望是一个简单的问题.我有一个自定义控件与依赖项属性,其中包含另一个自定义控件的列表.

public static readonly DependencyProperty BlockObjectsProperty = DependencyProperty.Register("BlockObjects", typeof(FreezableCollection<BlockObject>), typeof(Block), new FrameworkPropertyMetadata(new FreezableCollection<BlockObject>(), null));
public FreezableCollection<BlockObject> BlockObjects
{
     get { return (FreezableCollection<BlockObject>)base.GetValue(BlockObjectsProperty); }
     set { base.SetValue(BlockObjectsProperty, value); }
}
Run Code Online (Sandbox Code Playgroud)

然后在xaml中使用它来填充控件

<Viewbox Grid.Row="2" Stretch="Uniform">
    <ItemsControl x:Name="tStack" ItemsSource="{TemplateBinding BlockObjects}" ContextMenu="{StaticResource BodyContextMenuKey}">
        <ItemsControl.ItemsPanel>
            <ItemsPanelTemplate>
                <StackPanel Orientation="Vertical"  VerticalAlignment="Stretch" />
            </ItemsPanelTemplate>
        </ItemsControl.ItemsPanel>
     </ItemsControl>
</Viewbox>
Run Code Online (Sandbox Code Playgroud)

我现在的问题是我想将其序列化为一个文件但我得到'使用XamlWriter.Save时无法序列化泛型类型'System.Windows.FreezableCollection`'.如果这是一个普通的类,我可以使用属性来描述它应该被序列化的方式(对吗?)但它是一个静态依赖属性,那么如何让它序列化呢?

wpf xaml serialization

1
推荐指数
1
解决办法
1489
查看次数

标签 统计

.net ×1

c# ×1

entity-framework ×1

serialization ×1

wpf ×1

xaml ×1