NHibernate Teamcity build agent is currently a Windows Server 2012 R2. Are you meaning Sql Server 2016 can only run on Windows 10/Server 2016? There is already a SQL server 2016 on that server.
According to https://docs.microsoft.com/en-us/sql/sql-server/install/hardware-and-software-requirements-for-installing-sql-server, it runs under Windows 8 and Server 2012. So not on a Windows 7, but not only Windows10+. Indeed they have released it for all OS still in mainstream support (8/2012+), but not for those in extended support (7/2008, ending in 2020). Anyway, that should not prevent adding feature targeting a server not testable by some developers: NHibernate test suit can be configured by each developer to target what they have, and then it will ignore incompatible feature tests. About supporting JSON querying with an API abstracting away databases specificity, of course it would be great. But since each db seem to go its own path without much standardization, it may require too much effort. I see that a bit like XML support, NHibernate do not provide a way to issue "for xml" queries likely because this has to much discrepancies from a database to another. Now for JSON that seems way more simpler than XML, so why not trying anyway. For me, there are two distinct areas to tackle: - How NHibernate map a Json data on an entity? I think NHibernate should let the user map it as a plain string if he wants to. This may requires a JsonAsStringType for database defining a column as Json, or adapting the string type for handling those Json type. (May some data provider already provide deserialized values? If yes, it would have to serialize them back...) And Nhibernate should provide a type for mapping it as a poco (which class would be specified along the mapping otherwise inferred from the entity property). Having some dynamic mapping option would be great to. Maybe through dictionaries, for avoiding introducing a dependency on Json.Net or the not yet released System.Json on the entities (I only find obsolete Silverlight references for it or a pre-release Microsoft package). Of course, depending on how the data provider handles Json (does it handle serialization/deserialization or does it handle only already serialized Json?), NHibernate will still need to use a Json deserializer/serializer, and preferably a fast one like Json.Net. But this could be done through some Json serialization/deserialization provider, allowing the user to customize this. Supporting the SQL Server way means here we would also support any database even if not officially supporting Json. - How NHibernate query Json data directly in the db? Here explicit database support is of course mandatory. And maybe the discrepancies between db will cause some difficulties. Maybe should we first start by providing two basic HQL function taking the json path as a string and mapping to json_value/json_query (or the unique function for db having one for all). And supply two extensions for calling them with Linq. That would already allow a basic querying support. This suppose the json path has the same syntax for all databases. Otherwise we will have to choose one syntax and convert it for other databases. From there, maybe try if we can propose something more elaborated. -- --- You received this message because you are subscribed to the Google Groups "nhibernate-development" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
