Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using Firebird.NETClient with Client-Only Framework subset [DNET236] #245

Closed
firebird-automations opened this issue May 29, 2009 · 7 comments

Comments

@firebird-automations
Copy link

Submitted by: Robert Kindl (rkindl)

When I reference FirebirdSql.Data.FirebirdClient.dll in "Client-only" project I get following warnings:
Warning 1 The referenced assembly "FirebirdSql.Data.FirebirdClient.dll" has a dependency on "System.Data.Entity, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" which is not listed as part of the "Client" TargetFrameworkSubset. If this dependent reference is required, you may get compilation errors.

Warning 2 The referenced assembly "FirebirdSql.Data.FirebirdClient.dll" has a dependency on "http://System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" which is not listed as part of the "Client" TargetFrameworkSubset. If this dependent reference is required, you may get compilation errors.

Suggested solution for Warning 1
Provide version with conditional symbol ENTITY_FRAMEWORK switched off.

Suggested solution for Warning 2
Provide version with newly introduced conditional symbol SYSTEM_WEB switched off, which could be used in FbConnectionInternal.cs like this:
#⁠if (SYSTEM_WEB)
// showing ApplicationPhysicalPath may be wrong because of connection pooling; better idea?
if (System.Web.Hosting.HostingEnvironment.IsHosted)
return System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath;
else
#⁠endif
return Process.GetCurrentProcess().MainModule.FileName;

Maybe it will be wise to create new new conditional symbol CLIENTONLY_FRAMEWORK.

In FirebirdSql.Data.FirebirdClient.csproj there is also reference to "System.Design" which is not included in "Client-Only" subset too. But this assembly is not used for anything, so it doesn't generate warning as long as it's not used.

In all cases I would suggest to pre-build all these version as binaries, because many people are afraid of building from source code. It's because they see it as unofficial and unsupported. And it's also harder to mantain (it's much easier to copy one new .dll than rebuilding project with some "custom conditional symbols").

@firebird-automations
Copy link
Author

Modified by: @cincuranet

priority: Blocker [ 1 ] => Minor [ 4 ]

@firebird-automations
Copy link
Author

Commented by: @cincuranet

As the ClientOnly profile right now targets *only* WinXP, vote if you wanna support this ticket.

@firebird-automations
Copy link
Author

Commented by: Robert Kindl (rkindl)

In fact I must agree that ClientOnly profile is not as much important as it seems to me at first look, because it's installable only on Windows XP with no previous version of .NET present. So even for me it now seems as minor problem...

@firebird-automations
Copy link
Author

Commented by: @cincuranet

I'll leave it here for a while to let users vote. Then it'll be closed/implemented.

@firebird-automations
Copy link
Author

Modified by: @cincuranet

status: Open [ 1 ] => Closed [ 6 ]

resolution: Won't Fix [ 2 ]

@firebird-automations
Copy link
Author

Commented by: Dean Thrasher (dthrasher)

Can I vote to reopen this issue? It's a problem with the .NET Framework 4 Client Profile as well.

.NET 4 is not pre-installed on XP, Vista, or Windows 7

@firebird-automations
Copy link
Author

Commented by: Dean Thrasher (dthrasher)

Ah! Never mind. I see that the issue was reopened in this ticket: DNET318.

It looks like it will be fixed in 2.5.3. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants