过去几天我问了几个问题并得到了一些很好的答案,然后主要解决方案似乎是将我的客户升级到最新版本,因为这个原因我一直犹豫不决。
C#解决方案包含:
一个ASP.NET Web窗体应用程序,它没有引用Neo4JClient,它只是一个服务前端。
使用最新版客户端的类库(dll表示v1.1.0.0),这是WebForms项目用于数据的项目。
使用较新版本客户端的BasicAuthHTTPModule。
下面的MembershipProvider项目使用的Neo4jClient源库(不知道哪个版本,并且不知道如何检查)。
使用上述Neo4jClient dll作为参考的Neo4jMembershipProvider。
他们都在使用旧版本,直到今天早些时候我选择性地升级了BasicAuth和类库,现在解决方案按照预期进行构建,但是当你在浏览器中启动时,你会得到:
Method not found: 'Void Neo4jClient.GraphClient..ctor(System.Uri)'.
Source Error:
Line 48: <providers>
Line 49: <clear />
Line 50: <add name="Neo4JRoleProvider" type="Nextwave.Neo4J.Membership.Neo4JRolesProvider" connectionStringName="DefaultConnection" applicationName="/" />
Line 51: </providers>
Line 52: </roleManager>
现在,这对我来说是一个严重错误,我们需要升级,但我无法找到有关此错误的任何信息。我知道最近客户端发生了很大的变化,所以任何指针都会很棒。
由于
更新:我也将Neo4jMembershipProvider更新为更新的客户端版本,只是因为我们都运行相同的代码,但在构建时它会带回来:
'Nextwave.Neo4J.Membership.Data.User' does not contain a definition for 'Data' and no extension method 'Data' accepting a first argument of type 'Nextwave.Neo4J.Membership.Data.User'
引起:u.FirstOrDefault()。Data.Username
答案 0 :(得分:1)
从相关的2行中删除了数据(来自Neo4JMembershipProvider中的RoleProvider.cs以及编译和完美编译的所有内容。
u.FirstOrDefault().Data.Username --> u.FirstOrDefault().Username
roleList.Add(r.FirstOrDefault().Data.RoleName); --> roleList.Add(r.FirstOrDefault().RoleName);