小编Rud*_*cek的帖子

添加引用后,甚至找不到LinqPad Linq Include()扩展方法

我能做到

var result =  OAS_Questions.Count (oasq => oasq.Id!=0);
result.Dump();
Run Code Online (Sandbox Code Playgroud)

乃至

var result =  OAS_Questions;
result.Dump();
Run Code Online (Sandbox Code Playgroud)

但是当我试图将"问题"的子对象包含在"Opitons"中时

var result =  OAS_Questions.Include("OAS_QuestionOptions");
result.Dump();
Run Code Online (Sandbox Code Playgroud)

我看到以下错误

'System.Data.Linq.Table'不包含'Include'的定义,也没有扩展方法'Include'接受类型为'System.Data.Linq.Table'的第一个参数'(按F4添加使用指令或汇编参考)

我已经尝试添加对以下程序集引用的引用.

  1. System.Code
  2. System.Data
  3. System.Data.Entity的
  4. 将System.Data.Linq
  5. System.Linq.Expressions
  6. System.Data.DataSetExtensions

但是在编写查询时仍然无法使用扩展方法"Include()",它会产生语法错误.

.net linq entity-framework linqpad

16
推荐指数
3
解决办法
1万
查看次数

如何为IXmlSerializable类型添加名称空间前缀

我有以下类定义

[XmlRoot(ElementName = "person",Namespace = "MyNamespace")]
public class Person : IXmlSerializable
{
    public string FirstName { get; set; }
    [XmlNamespaceDeclarations]
    public XmlSerializerNamespaces Namespaces
    {
        get
        {
            var xmlSerializerNamespaces = new XmlSerializerNamespaces();
            xmlSerializerNamespaces.Add("My", "MyNamespace");
            return xmlSerializerNamespaces;
        }
    }

    public string LastName { get; set; }

    public XmlSchema GetSchema()
    {
        return null;
    }

    /// <exception cref="NotSupportedException"/>
    public void ReadXml(XmlReader reader)
    {
        throw new NotSupportedException();
    }

    public void WriteXml(XmlWriter writer)
    {
        writer.WriteElementString("firstName",FirstName);
        writer.WriteElementString("lastName", LastName);
    }
}
Run Code Online (Sandbox Code Playgroud)

我想用My:前缀为MyNamespace 序列化它,所以当我调用代码时

var xmlSerializer = …
Run Code Online (Sandbox Code Playgroud)

xml-serialization prefix xml-namespaces ixmlserializable

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

当我尝试在EF 4.3.1中启用迁移时引发异常

我在我的.Net 4.0类库项目中使用nuget安装的Entity framework 4.3.1.在情况下,当我在PM控制台中调用"Enable-Migrations"命令时,我收到以下异常:

用"1"参数调用"LoadFrom"的异常:"Nelzenačístsumbornebosestavenífile:/// D:\ Users\DvoracekR\Documents\Visual Studio 2010\Projects\WebCameras\packages\EntityFramework.4.3.1\to ols\EntityFramework.PowerShell.Utility.dll nebo jeden zjejichzávislýchprvků.Systémnemůženaléztuvedenýsubbor." 在D:\ Users\DvoracekR\Documents\Visual Studio 2010\Projects\WebCameras\packages\EntityFramework.5.0.0-rc\tools\EntityFramework.psm1:393 char:62 + $ utilityAssembly = [System.Reflection.Assembly] :: LoadFrom <<<<((Join-Path $ toolsPath Entity Framework.PowerShell.Utility.dll))+ CategoryInfo:NotSpecified:(:) [],MethodInvocationException + FullyQualifiedErrorId:DotNetMethodException

您无法在空值表达式上调用方法.在D:\ Users\DvoracekR\Documents\Visual Studio 2010\Projects\WebCameras\packages\EntityFramework.5.0.0-rc\tools\EntityFramework.psm1:394 char:50 + $ dispatcher = $ utilityAssembly.CreateInstance <<<<(+ CategoryInfo:InvalidOperation:(CreateInstance:String)[],RuntimeException + FullyQualifiedErrorId:InvokeMethodOnNull

使用"8"参数调用"CreateInstanceFrom"的异常:"Typ System.Data.Entity.Migrations.En ableMigrationsCommandzesestaveníEntityFramework.PowerShell,Version = 4.3.1.0,Culture = neutral,P ublicKeyToken = b77a5c561934e089nelzenačíst." 在D:\ Users\DvoracekR\Documents\Visual Studio 2010\Projects\WebCameras\packages\EntityFramework.5.0.0-rc\tools\EntityFramework.psm1:418 char:31> + $ domain.CreateInstanceFrom <<<<(+ CategoryInfo:NotSpecified:(:) [],MethodInvocationException + FullyQualifiedErrorId:DotNetMethodException

entity-framework entity-framework-4 ef-migrations

11
推荐指数
1
解决办法
2万
查看次数

保存*.rptproj项目时,参数"unevaluatedValue"不能为null

如果您的解决方案中有现有的Report Server Project,并且您将SQL Server数据工具从版本14.0.61707.300升级到14.0.61709.290,则在打开现有的*.rptproj文件时可能会收到以下消息:

升级消息

单击"是"按钮确认升级后,可以成功打开解决方案.当您尝试保存已修改的项目文件时,可以获取SaveAs ...对话框和以下确认框:

替换项目文件确认

但是当您确认替换现有项目文件时,可能会从Visual Studio中收到错误: 参数

visual-studio reporting-services sql-server-data-tools

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

扩展存储过程xp_create_subdir返回“无效参数”消息

从2005版开始,Microsoft SQL Server允许创建不存在的路径。只需使用指向磁盘上所需路径的参数调用存储过程即可。

DECLARE @targetDirectory nvarchar(max) = N'E:\backup' 
exec xp_create_subdir @targetDirectory
Run Code Online (Sandbox Code Playgroud)

因此,如果将上面的代码写入Microsoft SQL Server Management Studio的查询窗格中,则会收到以下错误消息:

消息22048,级别15,状态0,行0执行扩展存储过程时出错:参数无效

奇怪的是,如果您将代码更改为

exec xp_create_subdir N'E:\backup'
Run Code Online (Sandbox Code Playgroud)

并执行该命令,并在假定sql服务帐户具有写权限的情况下,在所需路径中创建目录。

sql-server stored-procedures subdirectory

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

是否可以附加修改初始迁移的索引?

我在我的项目中使用实体框架代码第一种方法.我在包管理器控制台中使用enable-migrations语句创建了模型并启用了迁移.我的上下文类包含映射配置和关系

modelBuilder.Configurations.Add(new PostMap());
modelBuilder.Configurations.Add(new UserMap());
Run Code Online (Sandbox Code Playgroud)

我的迁移文件中的Up方法201302261054023_InitialCreate.cs包含所有表定义,作为通过DbSet <Type>属性指定的上下文.

我在自定义数据库初始化程序中更改了InitializeDatabase方法,因为我想在数据库初始化期间迁移到特定的迁移.

public void InitializeDatabase(T context)
{
    bool databaseExists = context.Database.Exists();
    if (!databaseExists)
        context.Database.CreateIfNotExists();

    var configuration = new Configuration();
    var migrator = new DbMigrator(configuration);
    migrator.Update("InitialCreate");
}
Run Code Online (Sandbox Code Playgroud)

可以修改201302261054023_InitialCreate类中的Up方法来添加另一个索引

CreateTable(
        "dbo.City",
        c => new
            {
                Id = c.Int(nullable: false, identity: true),
                Name = c.String(maxLength: 450),
            })
        .PrimaryKey(t => t.Id);
Run Code Online (Sandbox Code Playgroud)

CreateTable(
        "dbo.City",
         c => new
            {
                Id = c.Int(nullable: false, identity: true),
                Name = c.String(maxLength: 450),
            })
        .PrimaryKey(t => t.Id)
        .Index(t=>t.Name,true);
Run Code Online (Sandbox Code Playgroud)

没有附加另一个迁移?

entity-framework ef-code-first ef-migrations entity-framework-5

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