To deploy an application written with dotConnect for MySQL, you need to:
- deploy the Devart runtime assemblies used by your application;
- include the technical license resource;
- in case your application uses provider factories, you also need to expose dotConnect for MySQL to the system.
For the detailed description of each of these steps, please refer to the
and
topics in dotConnect for MySQL help.
How to install dotConnect for MySQL on a machine that does not have
Visual Studio or Delphi installed?
Select the "Minimal" type when prompted by the installer.
How do I upgrade my projects to dotConnect for MySQL 5.00?
In the 5.00 release there were some important name changes in the product.
Particularly, assemblies, namespaces, invariant name, and some types
were changed as follows:
"CoreLab.Data" became "Devart.Data";
"CoreLab.MySql" became "Devart.Data.MySql";
"MySqlDirectFactory" became "MySqlProviderFactory";
Invariant name became "Devart.Data.MySql";
Your projects must be updated to be compatible with dotConnect for MySQL 5.0. Here is the list of files you should update:
*.csproj, *.vbproj - references to assemblies
*.cs, *.vb - namespaces
*.licx - namespaces and assembly names
Web.config - assembly names and web provider types
This is done automatically when you invoke the Upgrade wizard from the Visual Studio menu: Tools | MySQL | Upgrade Wizard.
I have received a message that Devart.Data is incompatible...
Devart data providers use a common assembly (Devart.Data.dll), so it is necessary to install compatible providers versions. We release our ADO.NET data providers in a single pack, thus releases from the same date should be compatible. Also, Devart data providers should warn you before installation if an incompatible version of Devart.Data.dll was detected.
I have received the following message - "error 0175: The specified store provider cannot be found in the configuration, or is not valid..".
What does it mean and what should I do?
You should put the Devart.Data, Devart.Data.MySql, and Devart.Data.MySql.Entity
assemblies in the Bin folder of your application (or place these assemblies in the Global Assembly Cache).
Make sure that your application is licensed correctly (take a look at the
article for more information).
Information about provider registering is available in the
article.
Subscriptions and Upgrades
I have a registered version of dotConnect for MySQL. Will I need to pay to upgrade to future versions?
Since dotConnect for MySQL 4.00, all upgrades to future versions are free to users with an active dotConnect for MySQL Subscription.
Users that have a registration for versions of dotConnect for MySQL prior to MyDirect .NET 4.00 can upgrade to
dotConnect for MySQL 5.00 to jump in on the Subscription Program.
What are the benefits of the dotConnect for MySQL Subscription Program?
The dotConnect for MySQL Subscription Program is an annual maintenance and support service
for dotConnect for MySQL users.
Users with a valid dotConnect for MySQL Subscription get the following benefits:
- Access to new versions of dotConnect for MySQL when they are released
- Access to all dotConnect for MySQL updates and bug fixes
- Product support through the dotConnect for MySQL Priority Support program
- Notification of new product versions
Priority Support is an advanced product support program which offers you
expedited individual assistance with dotConnect for MySQL-related questions from the dotConnect for MySQL developers themselves.
Priority Support is carried out over email and has a two business day response policy.
The dotConnect for MySQL Subscription Program is available for registered users of dotConnect for MySQL 4.00 and higher.
Can I use my version of dotConnect for MySQL after my Subscription expires?
Yes, you can. dotConnect for MySQL version licenses are perpetual.
Do I need a new subscription to use dotConnect for MySQL 6?
No, you don't. Provided that you have an active subscription, you will be able to download dotConnect for MySQL 6 from Registered Users' Area.
Technical Licensing
What is the licensing you use?
dotConnect for MySQL uses .NET component licensing. To build an operational
application, dotConnect for MySQL requires a valid license. If no license is available,
dotConnect for MySQL does not work.
How to embed the license into my application?
Usually you do not have to care about embedding the license in your application.
When you install dotConnect for MySQL, the system is configured so that licensing is done
transparently. The license is automatically added to the project when you place a MySqlConnection
component onto a form.
In some cases, you have to manually add the license. It is necessary for console applications,
class libraries, some ASP.NET applications and
existing projects initially built with a dotConnect for MySQL version that did not use component
licensing, that is, 3.20 and older. For instructions on how to add the license manually, refer to the
topic in the dotConnect for MySQL help.
On opening the connection, I get an exception saying "License not found...". What should I do?
This generally indicates that license information cannot be found, or you try to
apply it in some way that does not suit the kind of application. For example:
- The licenses.licx file, required for dotConnect for MySQL to function properly, cannot be found.
- The licenses.licx file is not added as an embedded resource.
- The App_Licenses.dll file is not found in ASP.NET applications.
To fix the problem, determine the type of your application and read the corresponding section of the "Licensing" topic.
On opening the connection, I get an exception saying "License not valid...". What should I do?
This means that license information is found but it is incorrect. It usually happens in the following cases:
- The project was earlier compiled with an old or trial version of dotConnect for MySQL.
- The licenses.config file used by a class library does not refer to the launched executable.
- The App_Licenses.dll file belongs to other application or needs to be recompiled.
- Something is wrong with the operating system or installation of dotConnect for MySQL.
If you encounter one of these problems, do the following (the numbers of actions correspond to the numbers of the problems in the above list):
- Delete all files from the bin and obj folders and rebuild the project.
- Specify the executable in the licenses.config file.
- Rebuild App_Licenses.dll for the current application.
- Perform the following steps:
- uninstall dotConnect for MySQL;
- remove all Devart.* and policy.*.Devart.* files from the GAC;
- clear the Program Files\Devart\dotConnect and Program Files\Common Files\Devart\dotConnect folders;
- re-install dotConnect for MySQL.
Deployed application worked fine some time, but at some moment it started
to say "Sorry, your trial period has expired". But I do not use trial version any more.
Probably, you compiled the application with the Trial edition of dotConnect for MySQL,
and deployed it with assemblies from a non-trial version. In this case, time limit is actual
as well. To eliminate the problem, just recompile the project.
How to license ASP.NET applications?
To support server-side compilation you ought to have the special assembly App_Licenses.dll
in the Bin directory of your site. To create this assembly, execute the Build
Runtime Licenses command in the licenses.licx file context menu in the Solution
Explorer view. The required assembly will be created automatically.
Note that this is not necessary for precompiled ASP.NET applications (if nothing is
compiled on the server by user request). Precompiled applications are licensed as usual applications.
How to make dotConnect for MySQL work with SQL Server 2005 Business Intelligence Solutions?
To do this, install dotConnect for MySQL on the same computer where SQL Server 2005 resides.
I am having problems with the licensing in my project... What am I to do?
If any problems with licensing occurred in your project, you should use the License Information dialog to resolve them. You can access it from the Visual Studio menu: Tools | MySQL | License Information.
Do end-users need a license?
No, end-users of your application do not require any license.
Connection pooling
I call MySqlConnection.Open(), then Close(). The physical connection is still
visible by the server. Isn't it a bug?
No, it is not. This is the Connection Pooling feature. The actual connection is not closed in
order to be used later by your application. This boosts performance greatly.
I get the following exception: "Timeout expired. The timeout period elapsed..."
What to do?
The full text of the exception is "Timeout expired. The timeout period elapsed prior to
obtaining a connection from the pool. This may have occurred because all pooled connections were in
use and max pool size was reached." It clearly states that you have run out of connections available.
To solve the problem, increase the Max Pool Size connection string parameter value. The default
value is 100. Another way to get extra connections is to clear one or all of the pools. Or you can
turn connection pooling off using the Pooling connection string parameter.
Method MySqlConnection.Open() succeeds, but MySqlCommand.Execute() leads to exception.
How to check the connection for validity?
This happens because connections in the pool may become invalid for some reasons.
Use the MySqlConnection.Ping() method to ensure that the connection is alive.
How to prevent possible pooling problems?
You can clear the pool explicitly. Generally, the pool is cleared automatically
when connections are idle or closed by the server. To force the operation, call the ClearPool or
ClearAllPools methods. Another solution is to disable the pool completely (set Pooling=false
in the connection string). If this does not help, the problem is not caused by pooling.
Documentation problems
How to open documentation on dotConnect for MySQL?
There are several ways to open dotConnect for MySQL documentation:
- Use the appropriate shortcut in the Start menu, for instance,
Start - Programs - Devart dotConnect for MySQL - Documentation.
- Use the following command in the IDE: Tools - MySQL - dotConnect for MySQL Help.
- Place the cursor on some class from Devart.Data.MySql and press F1.
There is also the same documentation in the chm format. You can download it from our web-site at the following address:
www.devart.com/dotconnect/mysql/dcmysql.chm
I can't see the documentation in Visual Studio Help Collection.
Correctly installed documentation appears as a separate node in the combined collection
of Visual Studio and Borland Delphi. If you can't find the dotConnect for MySQL node
there, it is because topics filtering is enabled. To reveal the node, set the filter to "Devart
Documentation", or "(unfiltered)", or "Visual C#", etc.
Another possible reason is that you installed some IDE after the installation of dotConnect for MySQL.
In this case, use aforementioned methods to access documentation.
All topics in the CHM file are blank.
This can happen due to some patches from Microsoft installed on your system.
Please read this page to find possible solutions
to the problem. In most cases, it is enough to right-click the CHM file, select Properties, click the
"Unblock" button and click "Apply" to show the contents.
ORM solutions
Are LINQ to SQL and Entity Framework supported?
The Professional Edition of dotConnect for MySQL supports both LinqConnect (formerly called LINQ to MySQL) and the
latest version of ADO.NET Entity Framework.
Where do I start with Entity Framework or LinqConnect?
For your convenience, there are brief tutorials that you can use to get acquainted with the technologies:
-
-
Are there any demo projects to play with?
Yes, dotConnect for MySQL includes several Entity Framework and LinqConnect samples in
C# and Visual Basic. The samples demonstrate how to use several entities
and a relationship between them. You can also download a separate
Entity
Framework Query Samples package, which is a standard Microsoft demo with
added MySQL connectivity.
Miscellaneous
Are there any restrictions for Visual Studio Express editions?
Yes, there are some. First, the provider add-in (and hence menu item) is not available.
Second, components are not registered in toolbox automatically (though you can do it manually). Finally,
advanced Visual Studio integration (DDEX) is not available, except Microsoft Web Developer 2005 Express.