jookyone wrote:
jeffreygg wrote:
The only place where I would seriously question the wisdom of consolidating the data access logic for consistency's sake would be when there is a real need to do server-side processing - complex stored procedures, for example. But how about LLBLGen hosted in the SQL CLR? Yum...
Jeff...
<snip>... Doesn't look like Yukon will allow a DAL of any sort to run in process.
I'm not so sure about this...I haven't done any real testing yet, but it appears as if you have Fusion support in the SQL host process. If the BCL is made available to it as well, including remoting support, etc, then I think you could host a complete DAL from within SQL process. Combine this with the direct, in-band SQL calls ADO.NET is providing and you have the makings of a very fast, in-proc, all-inclusive DAL.
MattWoberts wrote:
- The database is not greatly designed. Its old, and we wouldn't keep it as it is if we had a chance to change it. So as a result it doesnt map as well as it should to entities.
Difficult indeed. However, I would say that the level of reusability afforded by encapsulating the queries into objects still makes for a strong reason for using the framework. Assuming you've developed your standard predicate expressions in a way that makes them reusable, this should be a strong sell - no more copy/pasting SQL statements...
<snip>
Anyway, its intersting what you say about the moving more processing down to the database, and taking advantage of greater set of functionality, especially when yukon hits us. If a lot of views/procs/batch jobs were doen on slq server then the advantages of LLBL begin to lessen (does llblgen support parametized procs?)....can't wait to see what the future hold for llblgen though!
I'm not quite sure how the "standard" hook works for using .NET code as I haven't tested it yet. My assumption is that you would create a standard stored procedure and make calls to .NET types from within the stored proc.
What I hope is the case is that you don't have to treat code hosted by SQL any differently than "regular" code. In this way, I would prefer to use remoting to call into my DAL sitting in-process on the SQL server.
Either way, though, I think that you could successfully model a parameterized proc in code as it's just basically a function call.
Jeff...