小编Lad*_*nka的帖子

身份'component_type_name'的成员在元数据集合中不存在.\ r \nParameter name:identity

在数据库中,我有一个名为SERVICE的表.对于这个表,我在INSER/UPDATE/DELETE之后有触发器.当我尝试使用EF将记录插入数据库时​​,我得到错误"元素集合中不存在具有标识的成员'component_type_name'.\ r \nParameter name:identity"."component_type_name"列在SERVICE表中不存在,但在表COMPONENT_TYPES_IN_SERVICE中.这是表SERVICE的插入触发器.当我从表中删除触发器时,插入时没有任何问题.

CREATE TRIGGER [dbo].[UpdateComponentTypesInServiceOnInsert]
   ON [dbo].[SERVICE] 
   AFTER INSERT
AS 
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;

DECLARE @componentID int;
SET @componentID = 0;

DECLARE @ComponentTypeID int;
SET @ComponentTypeID = 0;

DECLARE @ComponentTypeName nvarchar(255);
SET @ComponentTypeName = null;

SELECT @componentID = component_id from inserted;

SELECT @ComponentTypeID = c.component_type_id, @ComponentTypeName = ct.description from COMPONENTS c
inner join dbo.COMPONENT_TYPES ct on c.component_type_id = ct.id
WHERE …
Run Code Online (Sandbox Code Playgroud)

sql-server triggers entity-framework

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

是否建议将自我跟踪实体与WCF服务一起使用?

我想知道在WCF服务中是否建议使用Self Tacking Entities(在Entity Framework中)?如果是,那么你可以指导我一个指导如何做到这一点的教程吗?

实际上,我将使用Prism与MEF和MVVM开发WPF应用程序.我决定使用Entity Framework.我想要有关这种方法的建议和建议.

任何帮助将不胜感激.

wcf entity-framework self-tracking-entities

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

具有证书以及客户端和服务签名的WCF消息安全性

我们正在尝试使用x509证书在客户端和WCF服务之间实现消息安全性.客户端发送soap安全标头,服务按预期验证标头.问题是该服务没有使用我们需要的安全头来签署它的响应消息.我相信下面包含了所需的所有信息,但如果您还需要其他信息,请告诉我.谢谢!

该服务的web.config:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.web>
    <customErrors mode="Off" />
  </system.web>
  <system.serviceModel>
    <services>
      <service name="RealIdCardService.AetnaNavigator" behaviorConfiguration="serviceCredentialBehavior">
        <endpoint address="" contract="RealIdCardService.IAetnaNav" binding="wsHttpBinding" bindingConfiguration="InteropCertificateBinding"></endpoint>
        <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange" />
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="serviceCredentialBehavior">
          <serviceDebug includeExceptionDetailInFaults="true" />
          <serviceMetadata httpsGetEnabled="true" />
          <serviceCredentials>
            <!--certificate storage path in the server-->
            <serviceCertificate findValue="WcfClient" x509FindType="FindBySubjectName" storeLocation="LocalMachine" storeName="TrustedPeople" />
            <issuedTokenAuthentication allowUntrustedRsaIssuers="true" />
            <!--certificate storage path in the client-->
            <clientCertificate>
              <certificate findValue="WcfServer" x509FindType="FindBySubjectName" storeLocation="LocalMachine" storeName="TrustedPeople" />
              <authentication certificateValidationMode="PeerTrust" revocationMode="NoCheck" />
            </clientCertificate>
          </serviceCredentials>
        </behavior>
          </serviceBehaviors>
    </behaviors>
    <bindings>
      <wsHttpBinding>
        <binding name="InteropCertificateBinding"> …
Run Code Online (Sandbox Code Playgroud)

wcf ws-security soap certificate wcf-security

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

Sharp Architecture另类

我正在寻找Sharp Architecture替代方案,它首先使用Entity Framework代码作为ORM.是否有像Sharp架构这样的成熟项目,首先使用EF代码?

.net c# architecture asp.net-mvc entity-framework

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

为什么实体框架代码首先更改我的类型名称?

我使用EF 4.1 Power Toys生成了一堆类来对我的数据库进行逆向工程.我的类和地图看起来很好并且运行良好,但是当我检查返回的类型的名称时,似乎EF已经为类型名称添加了GUID.这是一个用于身体的方法:

var context = new DbContext();
var myVehicle = context.Vehicles.First();
return myVehicle.GetType().Name;
Run Code Online (Sandbox Code Playgroud)

......会返回类似的东西:

"Vehicle_F31E8AC6EB21A3220F761E7C2FFEB3B433CEFC7CF567E9A0CF53E8F4B598C2B9"
Run Code Online (Sandbox Code Playgroud)

为什么会这样,有什么办法可以关掉它?

c# entity-framework entity-framework-4.1

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

证书,加密和身份验证

大多数情况下,我的混淆似乎是从我在WCF环境中理解安全性的尝试中解脱出来的.在WCF中,看起来证书可用于身份验证和加密.基本上,我试图理解:

  1. 如何将X509证书用作身份验证令牌?ssl证书通常不是公开的吗?这不会使它们无法用于身份验证吗?如果没有,是否有一些通常用于此目的的协议?
  2. 使用WCF加密消息时,使用的证书是仅发送给客户端,仅发送给服务器,还是两者都发布?如果使用来自客户端和服务器的证书,我有点不清楚为什么.这主要源于我对https的理解,在这种情况下,只有颁发给服务器的证书(并且链接到根CA颁发的某些证书​​)才有必要建立加密连接并验证服务器.

我不完全确定这是正确的论坛.我的问题源于试图理解WCF,但我想我想理解这背后的理论.如果这是一个好主意,请为我建议正确的论坛.如果有必要的话,我很乐意尝试迁移这个问题.

提前致谢!

https wcf ws-security certificate wcf-security

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

SQLite CreateDatabase不支持错误

我正在使用Entite Framework 4.2 CF和SQLite,但是当我尝试启动应用程序时,我得到"提供程序不支持CreateDatabase"错误.这是我的模型映射:

protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            #region NewsMapping

            modelBuilder.Entity<News>().ToTable("news");
            modelBuilder.Entity<News>().HasKey(x => x.Id).Property(x => x.Id).HasColumnName("ID").HasColumnOrder(0);
            modelBuilder.Entity<News>().Property(x => x.Status).HasColumnName("STATUS");
            modelBuilder.Entity<News>().Property(x => x.NewsTitle).HasColumnName("NEWS_TITLE");
            modelBuilder.Entity<News>().Property(x => x.Content).HasColumnName("CONTENT_1");
            modelBuilder.Entity<News>().Property(x => x.IsImportant).HasColumnName("IS_IMPORTANT");
            modelBuilder.Entity<News>().Property(x => x.OrderNumber).HasColumnName("ORDER_NUMBER");
            modelBuilder.Entity<News>().Property(x => x.CreateDate).HasColumnName("CREATE_DATE");
            #endregion

            base.OnModelCreating(modelBuilder);

        }
Run Code Online (Sandbox Code Playgroud)

这段代码有什么问题?

谢谢

sqlite system.data.sqlite ef-code-first entity-framework-4.1 asp.net-mvc-3

3
推荐指数
2
解决办法
7216
查看次数

使用WCF WebApi的异步REST服务

我想知道开发人员对WCF WebApi服务的看法是什么.

在N层应用程序中,我们可以拥有多层服务.我们可以使用服务来消耗外部服务的数据.在那种情况下,使用WCF 4.0创建异步休息服务是值得的.

public interface IService
{
   [OperationContractAttribute(AsyncPattern = true)]
   IAsyncResult BeginGetStock(string code, AsyncCallback callback, object asyncState);
    //Note: There is no OperationContractAttribute for the end method.
    string EndGetStock(IAsyncResult result); 
}
Run Code Online (Sandbox Code Playgroud)

但随着WCF WebApi的发布,这种方法仍然需要吗?创建异步服务?

如何在IIS/WAS /自托管中托管它们

期待建议和评论.

wcf wcf-hosting wcf-rest wcf-web-api

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

实体框架| 代码优先| 从CultureInfo.Name映射子属性

我有这样一个实体:

public class Course {
    public CultureInfo Culture {get; set;}
    :
}
Run Code Online (Sandbox Code Playgroud)

我想只将Name属性映射CultureInfo到Entity Framework为我生成的表中的单个列.

我该怎么做?目前我已经尝试过查看DbContext的OnModelCreating()方法,但我找不到任何突出的东西.

我正在使用Entity Framework 4.1和MVC 3应用程序使用Code First方法.

非常感谢.

mapping code-first ef-code-first entity-framework-4.1 asp.net-mvc-3

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

如何防止EF尝试在我的模型上映射方法?

所以,我有一个具有普通属性的"Speaker"类,以及一个像这样的普通旧方法:

public string FullNameFirstLast()
{
    return FirstName + " " + LastName;
}
Run Code Online (Sandbox Code Playgroud)

我正在使用Entity Framework Code First Magic Unicorn版,我收到此错误:

System.NotSupportedException:LINQ to Entities无法识别方法'System.String FullNameFirstLast()'方法,并且此方法无法转换为商店表达式.

这看起来很奇怪,因为它是一种方法,而不是属性,所以我想知道为什么EF会关心它...所以我试着告诉EF忽略它:

    modelBuilder.Entity<Speaker>()
        .Ignore(ignore => ignore.FullNameFirstLast())
        ;
Run Code Online (Sandbox Code Playgroud)

这没有用,因为现在我收到此错误消息:

System.InvalidOperationException:表达式'ignore => ignore.FullNameFirstLast()'不是有效的属性表达式.表达式应该表示一个属性:C#:'t => t.MyProperty'VB.Net:'Punction(t)t.MyProperty'.

我该怎么做呢?我假设我的模型对象上有EF方法,对吧?

linq-to-entities entity-framework entity-framework-4.1

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