草庐IT

ad_frameworks

全部标签

c# - Entity Framework - 使用数据注释的属性的默认值

我有一个这样的模型publicclassMyModel{publicintMyModelId{get;set;}publicstringName{get;set;}publicstringDescription{get;set;}publicstringTitle{get;set;}}我想知道是否有一种方法,使用数据注释,将属性的值(比如标题)设置为其他属性值的默认值,即名称。像这样的东西:if(MyModel.Title=="")MyModel.Title=MyModel.Name; 最佳答案 如果您想要默认值,请在实体默认(无参

c# - Entity Framework 6.1.0 SaveChangesAsync

我有EF帮助程序类可以异步保存更改:publicasyncTaskSaveOrUpdateAsync(TEntityentity)whereTEntity:class,IContextEntity{if(entity.Id==0)context.Set().Add(entity);else{TEntitydbEntry=context.Set().Find(entity.Id);if(dbEntry!=null)dbEntry=entity;}returnawaitcontext.SaveChangesAsync();}publicvoidSave(){TasksaveEntit1As

c# - Entity Framework 指南

我正在尝试使用SQLServer2008设置EntityFramework。我将Guid用于表上的键。有没有办法设置它以便数据库自动生成key?我尝试将“RowGuid”设置为true,并将列的默认值设置为“(newid())”。无论哪种方式,映射类仍然需要我在C#端给它一个Guid。有什么想法吗? 最佳答案 Notyet:17.4.CanIuseaserver-generatedguidasmyentitykey?Unfortunately,inv1oftheEFthisisnotsupported.Whileitispossib

c# - 分层 Entity Framework 查询异常

我正在尝试使用EntityFramework构建分层集合-请参阅下面的查询-给定公司中的每个成员都有一个父成员-但是在尝试执行此操作时我得到以下异常:System.NotSupportedException:Thetype'Member'appearsintwostructurallyincompatibleinitializationswithinasingleLINQtoEntitiesquery.Atypecanbeinitializedintwoplacesinthesamequery,butonlyifthesamepropertiesaresetinbothplacesan

c# - .NET Entity Framework 插入与批量插入

当我使用我的xxxContext对象并向表发出多个添加时,EntityFramework如何将其解析为SQL?它会循环执行insertintoxxx还是如果有数百行,它是否足够智能以发出批量插入命令?奖励问题:如果它不发出批量插入,是否有办法强制它发出,这样我的数据库性能就不会被单独的插入破坏?还是批量处理到临时表,然后像Upsert一样合并到原始表? 最佳答案 任何ORM工具的缺点是它“很啰嗦”。大多数时候这就足够了。有时不是。简短的回答是“不”。这就是为什么有时我仍然会选择IDataReader而不是EF或NHibernate等

c# - 尝试使用 LDAP 连接来连接 AD 时出错

尝试使用此代码连接ADPrincipalContextcontext=newPrincipalContext(ContextType.Domain,domain)但我收到错误消息:TheLDAPserverisunavailable.有什么想法吗? 最佳答案 问题是:您是否将我们的域指定为“mydomain.com”(DNS格式)或作为“dc=mydomain,dc=com”(AD样式格式)令我惊讶的是,域名必须采用DNS格式(例如“mydomain.com”)才能正常工作(NOT在通常的AD中-样式格式为“dc=mydomain,

c# - Entity Framework 给出异常 : "The underlying provider failed on Open."

我有一个测试。发生的情况是,无论何时首先执行test1,test2都会失败并显示消息:"System.Data.EntityException:System.Data.EntityException:theunderlyingproviderfailedonopen.cannotopendatabase"DBEntities"requestedbythelogin.Theloginfailed.".只要先执行test2,test1就会失败并显示相同的消息。过去3天我一直在处理这个问题。[TestClass]classMyTestClass{DBEntitiesdb;[TestIniti

c# - 在 Entity Framework 中使用唯一约束交换值

我对Navigations表的名为Index的列有唯一约束。我有两个Navigation实体,我想交换它们的Index值。当我调用db.SaveChanges时,它会抛出一个异常,表明违反了唯一约束。似乎EF正在更新一个值,然后更新另一个值,因此违反了约束。难道不应该在事务中同时更新它们,然后在整理出值且不违反约束后尝试提交吗?有没有不使用临时值的方法解决这个问题? 最佳答案 这不是EF的问题,而是SQL数据库的问题,因为update命令是顺序执行的。事务与此无关——所有约束都是按命令而不是按事务验证的。如果您想交换唯一值,您需要更

c# - 如何从 Entity Framework 6 中的 Auditlog 实体获取 ID

我知道那里有几篇类似的帖子,但我找不到任何解决此问题的帖子。我想在EntityFramework6中添加、更改或删除实体(软删除)时添加(某种)AudioLog。我已经覆盖了SaveChanges,因为我只想为添加、修改的EntityStates添加日志条目或已删除,我会在第一次调用SaveChanges之前获取列表。问题是,因为我需要记录已执行的操作,所以我需要检查实体的EntityState。但是在调用SaveChanges之后,所有条目的EntityState都保持不变。publicoverrideintSaveChanges(){using(varscope=newTransa

c# - 使用 Bearer token 时,具有 AD 身份验证的 Azure Function 导致 401 Unauthorized

我在C#中有一个非常简单的Azure函数,我已经为其设置了AzureAD身份验证。我刚刚使用Express设置在功能配置中创建了应用程序注册。publicstaticclassIsAuthenticated{[FunctionName("IsAuthenticated")]publicstaticasyncTaskRun([HttpTrigger(AuthorizationLevel.Anonymous,"get","options",Route=null)]HttpRequestreq,ILoggerlog){returnnewOkObjectResult("Youare"+req.