小编Joh*_*ter的帖子

使用EntityFramework 4为实体分配ID

我想为我的实体实现"默认"Id生成支持.

保存实体时,我希望EntityFramework只生成实体的id值(如果尚未设置).如果ID已经具有非null,非零值,我希望在将实体保存在数据库中时保留该实体ID.

我正在将数据从遗留数据模型(从旧数据库创建的EntityFramework模型)迁移到新创建的(模型优先)EntityFramework模型.让我们称之为旧模型A和新模型T.

通常,我希望T实体在保存时设置它们的ID(它们都是int64),以便长期使用新模型.

目前,我明确地根据我正在迁移的相应A实体的Id来分配T实体ID.这样就很容易检查迁移结果.

但是,虽然我可以将T实体的id分配给与迁移例程中的A实体相同的id,但在保存实体后,Id值已更改.

有没有办法覆盖T模型中所有实体的默认保存方法,因此只有在保存之前尚未在实体中设置id值时才分配id值?

我在这里看了一些其他的EntityFramework/Id问题,但在我看来,他们都没有问过同样的问题.

感谢任何线索.

c# savechanges entity-framework-4

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

使用查询字符串参数重写旧版URL

我已经看过ASP.Net MVC路由遗留URL传递查询字符串ID到控制器操作以及其他几个类似的遗留URL路由帖子,但是我无法通过错误"RouteData必须包含一个名为'controller'的项目非空字符串值." 在线查看并没有给我任何解决我的问题的提示.

我已经实现了上面链接中描述的Legacy路由类,这就是我在路由表中定义的:

        routes.Add(
            "Legacy", 
            new LegacyRoute("fooref.aspx", 
            "FooRef", 
            new LegacyRouteHandler())
        );

        routes.MapRoute(
            "FooRef",
            "{controller}/{action}",
            new
            {
                controller = "Home",
                action = "Index",
                foo_id = UrlParameter.Optional,
                bar_id = UrlParameter.Optional
            }
        );
Run Code Online (Sandbox Code Playgroud)

当我使用Phil Haack的路由调试器时,它表示fooref.aspx有匹配,但是当我关闭路由调试器时,我得到上面的错误.如果我反转语句顺序,我会得到/ resourceprerat.aspx的"资源未找到",这是有意义的 - 因此它似乎是在以其他顺序放入时作为有效路由.

我在哪里需要声明这个缺少的控制器参考?

ASP.NET MVC 2 RTM的路由要求是否已更改?

asp.net-mvc asp.net-mvc-routing

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

如何摇动生成Kotlin?

我正在尝试kotlin从一个庞大的json文件生成代码,但是我无法弄清楚应该使用的命令行参数。

I've tried Swagger codegen v2.3.1 and v2.2.3 and both fail for kotlin, kotlin-client, and kotlin-server with the same error. What's the correct switch to generate Kotlin?

Update from Helen's question: I installed swagger codegen with:

git clone git@github.com:swagger-api/swagger-codegen.git ./swagger-codegen
cd swagger-codegen
git checkout tags/v2.2.3
Run Code Online (Sandbox Code Playgroud)

I also tested with Swagger codegen's bin/kotlin-client-petstore.sh and kotlin was not recognized for that script.

(I've also tried the Swagger Codegen plugin for IntelliJ because it does list kotlin as an …

intellij-plugin kotlin swagger-codegen

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

OpenAPI 3 是否有官方的 Typescript 类型定义?

我发现https://github.com/metadevpro/openapi3-ts/blob/master/src/model/OpenApi.ts这是 OpenAPI 3.x 的 Typescript 定义版本,但我找不到OAS 3 的官方(又名绝对类型)类型定义文件。

有吗?

TIA

typescript openapi openapi-generator

6
推荐指数
2
解决办法
1910
查看次数

为什么c#不支持将接口作为参数的对象?

我有以下类声明:

public class EntityTag : BaseEntity, ITaggable
Run Code Online (Sandbox Code Playgroud)

我有一个Html帮助方法:

public static string TagCloud(this HtmlHelper html, IQueryable<ITaggable> taggables, 
  int numberOfStyleVariations, string divId)
Run Code Online (Sandbox Code Playgroud)

这是我的ASP.NET MVC ascx:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IQueryable<EDN.MVC.Models.EntityTag>>" %>
<%@Import Namespace="EDN.MVC.Helpers" %>
<%= Html.TagCloud(Model, 6, "entity-tags") %>
Run Code Online (Sandbox Code Playgroud)

当我将IQueryable集合传递给ascx时,我收到此错误:

编译器错误消息:CS1928:'System.Web.Mvc.HtmlHelper>'不包含'TagCloud'的定义和最佳扩展方法重载'EDN.MVC.Helpers.EdnHelpers.TagCloud(System.Web.Mvc.HtmlHelper, System.Linq.IQueryable,int,string)'有一些无效的参数

如果我尝试使用以下方法显式转换对象集合:

    public static string TagCloud(this HtmlHelper html, IQueryable<Object> taggables, int numberOfStyleVariations, string divId)
    {
        var tags = new List<ITaggable>();
        foreach (var obj in taggables)
        {
            tags.Add(obj as ITaggable);
        }
        return TagCloud(html, tags.AsQueryable(), numberOfStyleVariations, divId);
    }
Run Code Online (Sandbox Code Playgroud)

我得到了同样的错误 - 编译器不喜欢我传入的值.

我的EntityTag类不应该自动支持IQueryable吗?我错过了什么?它必须是明显的东西.(我希望.)

.net c# asp.net-mvc

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

从实体对象获取ObjectContext引用的最快方法是什么?

我正在为我的EntityFramework对象创建扩展,如如何:自定义生成的数据对象中所述,但在某些扩展中,我需要获取实例的ObjectContext来查找模型中的其他一些值.我已经找到了提示24 - 如何从实体获取ObjectContext,但这是几年前编写的,这在类似的SO问题中被引用,但我真的希望现在有更好的答案.

当然,这必须是经常需要的东西,以便使用官方方法支持从实体本身检索实体的对象上下文.

提前感谢您提供有关此实施的最新信息.

c# entity-framework-4 entityobject objectcontext

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

我可以使用TFS提供的通知配置视觉差异视图吗?

当我的团队中有人检查代码时,我有TFS向我发送警报.(我必须为每个项目创建通知规则,但这只是这个问题中的侧栏投诉.)

这些警报提供了一些有关谁在文件中签入以及哪些文件已更改的信息,以及在浏览器中查看详细信息的URL.让我感到困惑的是,我不能只点击源文件,看到变化的视觉差异.没有链接可以在Visual Studio中自动启动差异(使用自定义协议).

有没有办法配置TFS以提供通过此通知UI签入的文件更改的可视差异?

diff tfs

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

为什么Database First EF会跳过某些表的映射?

我正在使用Entity Framework 4和Database First绑定,而EF并没有为我的一些表生成实体.我没有收到任何错误,无论我从设计图面上的"从数据库更新模型"弹出菜单中选择要生成的表多少次,模型中仍然缺少相同的表.

我在向导中没有错误.他们只是没有生成.有线索吗?

entity-framework-4 database-first ef-database-first

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

如何在不提供凭据的情况下将安全rss订阅源读入SyndicationFeed?

无论出于何种原因,IBM都使用https(不需要凭据)来获取RSS源.我正在尝试使用.NET 4 SyndicationFeed 来使用https://www.ibm.com/developerworks/mydeveloperworks/blogs/roller-ui/rendering/feed/gradybooch/entries/rss?lang=en.我可以在浏览器中打开这个Feed,它加载得很好.这是代码:

        using (XmlReader xml = XmlReader.Create("https://www.ibm.com/developerworks/mydeveloperworks/blogs/roller-ui/rendering/feed/gradybooch/entries/rss?lang=en"))
        {
            var items = from item in SyndicationFeed.Load(xml).Items
                        select item;
        }
Run Code Online (Sandbox Code Playgroud)

这是例外:

System.Net.WebException was unhandled by user code
Message=The remote server returned an error: (500) Internal Server Error.
Source=System
StackTrace:
   at System.Net.HttpWebRequest.GetResponse()
   at System.Xml.XmlDownloadManager.GetNonFileStream(Uri uri, ICredentials credentials, IWebProxy proxy, RequestCachePolicy cachePolicy)
   at System.Xml.XmlDownloadManager.GetStream(Uri uri, ICredentials credentials, IWebProxy proxy, RequestCachePolicy cachePolicy)
   at System.Xml.XmlUrlResolver.GetEntity(Uri absoluteUri, String role, Type ofObjectToReturn)
   at System.Xml.XmlReaderSettings.CreateReader(String inputUri, XmlParserContext inputContext)
   at System.Xml.XmlReader.Create(String inputUri, XmlReaderSettings settings, XmlParserContext inputContext) …
Run Code Online (Sandbox Code Playgroud)

c# rss .net-4.0 syndication-feed syndicationfeed

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

Windows上的neo4j如何在交互式浏览器会话中解析cypher加载csv中的文件名路径?

我已经查看了有关此主题的所有其他问题,所有答案(甚至是那些已批准的答案)都是不完整或错误的.所以,我提供了具体的例子,希望得到一个明确的解释.

我在neo4j.conf中尝试了以下设置,并且所有设置似乎都以相同的方式处理:

dbms.directories.import=d:\\import\\
dbms.directories.import=d:/import/
dbms.directories.import=d:/import
Run Code Online (Sandbox Code Playgroud)

在浏览器交互式会话中使用以下命令,结果位于命令的每个版本上方的注释中

// URI is not hierarchical
LOAD CSV WITH HEADERS FROM "file:Endpoint.csv" AS row WITH row LIMIT 4 RETURN row

// Invalid input '/', makes sense but violates "correct" syntax seen online
LOAD CSV WITH HEADERS FROM file:/d:Endpoint.csv AS row WITH row LIMIT 4 RETURN row
LOAD CSV WITH HEADERS FROM file://d:/import/Endpoint.csv AS row WITH row LIMIT 4 RETURN row
LOAD CSV WITH HEADERS FROM file:///d:/import/Endpoint.csv AS row WITH row LIMIT 4 RETURN row

// …
Run Code Online (Sandbox Code Playgroud)

csv neo4j cypher

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

如何告诉Delphi在DXS中使用本地项目的Security.pas文件而不是Winapi.Security.pas?

Delphi 10 Seattle介绍了Winapi.Security.pas.我正在尝试升级的项目(包)已经有一个Security.pas文件.如果没有从项目范围名称列表中删除Winapi(巨大的不良涟漪效应),有没有办法告诉IDE和编译器使用项目的Security.pas文件而不是Winapi.Security.pas?

我已经尝试重命名项目Security.pas,但这导致了更多的问题,编译器生成的错误与它所抱怨的代码无关,所以这是一个rathole我宁愿现在不去.这个项目在XE7,FWIW中建立得很好,所以这不是由于项目中的任何代码更改.

更新:

  • 重命名文件并使用单位别名不起作用.
  • 包的编译器行为与应用程序不同.

delphi dcc32 delphi-10-seattle

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

是否修复了非阻塞套接字的WSAPoll错误?

我正在考虑从Delphi中的非阻塞套接字服务器的select()转换为WSAPoll()/ poll(),我遇到了这个描述WSAPoll严重缺陷的对话.有谁知道WSAPoll是否有修复或解决方法?或者我唯一的选择是I/O完成端口的额外工作?

sockets windows delphi

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