このエラーで立ち往生しており、これに対する解決策が見つかりません。私はいくつかのことを試しましたが、解決策を思い付くことができませんでした。
これが私の問題です:
コード:
namespace ProjectTracker.Database.Entities
{
[DataContract]
public class User
{
[DataMember]
public int Id { get; set; }
[Required]
[MaxLength(50)]
[DataMember]
public string UserName { get; set; }
[Required]
[MaxLength(100)]
[DataType(DataType.Password)]
[DataMember]
public string Password { get; set; }
[DataMember]
public bool IsPasswordExpired { get; set; }
[Required]
[DataMember]
public DateTime CreatedDate { get; set; }
[Required]
[ForeignKey("CreatedBy")]
[DataMember]
public int CreatedByUserId { get; set; }
[DataMember]
public virtual User CreatedBy { get; set; }
[Required]
[DataMember]
public DateTime LastUpdatedDate { get; set; }
[ForeignKey("LastUpdatedBy")]
[DataMember]
public int? LastUpdatedByUserId { get; set; }
[DataMember]
public virtual User LastUpdatedBy { get; set; }
}
}
Web サービスから呼び出しているときに取得する例外の詳細は次のとおりです。
リクエスト エラー サーバーでリクエストの処理中にエラーが発生しました。例外メッセージは、「モデルの生成中に 1 つ以上の検証エラーが検出されました: \tSystem.Data.Entity.Edm.EdmAssociationEnd: : 関係 'User_LastUpdatedBy' のロール 'User_LastUpdatedBy_Source' で多重度が無効です。従属ロール プロパティはキー プロパティではないため、従属ロールの多重度の上限は「*」である必要があります。'。詳細については、サーバー ログを参照してください。例外スタック トレースは次のとおりです。
System.Data.Entity.DbModelBuilder.Build (DbProviderManifest providerManifest、DbProviderInfo providerInfo) で System.Data.Entity.DbModelBuilder.Build (DbConnection providerConnection) で System.Data.Entity.Internal.LazyInternalContext.CreateModel (LazyInternalContext internalContext) で System. Data.Entity.Internal.RetryLazy
2.GetValue(TInput input) at System.Data.Entity.Internal.LazyInternalContext.InitializeContext() at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType) at System.Data.Entity.Internal.Linq.InternalSet
System.Data.Entity.Internal.Linq.InternalSet で1.get_InternalContext() at System.Data.Entity.Infrastructure.DbQuery
1.Initialize() System.Linq.Queryable.Where[TSource](IQueryable) で 1.System.Linq.IQueryable.get_Provider()1 source, Expression
1 述語) e:\My Own\Projects\ProjectTracker\Database\ProjectTracker.Database.DataAccess\DLAccess.cs:line 31 at ProjectTracker.Business.BLAccess.BLAccess の ProjectTracker.Database.DataAccess.DLAccess.DoesUserExist(String userName) .DoesUserExists(String userName) in e:\My Own\Projects\ProjectTracker\Business\ProjectTracker.Business.BLAccess\BLAccess.cs:line 37 at ProjectTracker.UI.Web.WS.WebAccess.DoesUserExist(String userName) in e: \My Own\Projects\ProjectTracker\UI\ProjectTracker.UI.Web\WS\WebAccess.svc.cs: SyncInvokeDoesUserExist(Object , Object[] , Object[] ) の 12 行目 System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke( System.ServiceModel.Dispatcher の System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc) のオブジェクト インスタンス、Object[] 入力、Object[]& 出力)。ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) で System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc) で System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
私がここで間違っていることを教えてください...