On Thu, Jun 1, 2017 at 10:05 AM, Frédéric Delaporte
<fredericdelapo...@free.fr> wrote:
> 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).

Yes, thank you for clarifying. Windows 8/2012+. Point is, no upgrade
path for Windows 7 users, at least not today.

> 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.

Supporting an agnostic Xml/XPath scenario shouldn't be too terribly
difficult IMO. As you say, it's a pathing issue, among other Xml
nuances, attributes, elements, etc.

> 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 could be wrong, but it seems to me a "simple" {"property": "value"}
approach would be *too* simple. How would you capture type
information? That would be key, to have a richer mechanism, like
{"property": {"type": "System.Object", "value": "value"}}. Just for
example. Of course, then there is the matter of value conversion
to/from strings, ostensibly.

> 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 nhibernate-development+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 

--- 
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 nhibernate-development+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to