﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>StrataFrame Forum » StrataFrame Application Framework - V1 » WinForms (How do I?)  » How To on connecting to a hosted SQL Server Express database</title><generator>InstantForum 2017-1 Final</generator><description>StrataFrame Forum</description><link>http://forum.strataframe.net/</link><webMaster>StrataFrame Forum</webMaster><lastBuildDate>Wed, 27 May 2026 14:21:21 GMT</lastBuildDate><ttl>20</ttl><item><title>How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost23657.aspx</link><description>Hi SF Team,&lt;/P&gt;&lt;P&gt;As I have mention in the past, I am just a part-time VB.NET programmer.&amp;nbsp; I am not on here very often, but when I need advice or REAL answers you guys are the ones I come to. That is why I love SF and renew my license every year to have access to this forum.&amp;nbsp; &lt;/P&gt;&lt;P&gt;My scenario is this.&amp;nbsp; I have written Win App obviously using SF.&amp;nbsp;&amp;nbsp;Each database only has to hold up to&amp;nbsp;500,000 records maximum so that is why I am using SQL Server Express databases.&amp;nbsp;&amp;nbsp;&amp;nbsp; Currently, I have setup an VPN connection&amp;nbsp;to enable 2 users to connect remotely to the databases within my client's network for running the win app.&amp;nbsp;&amp;nbsp; In addition, I have serveral small databases running on a single&amp;nbsp;XP box&amp;nbsp;using a&amp;nbsp;single SQL Server Express instance.&amp;nbsp; Depending on the client records they can connect to any one of the databases they choose.&amp;nbsp; At the moment, everything is working great.&amp;nbsp; However, he wants to setup up to 10 remote users.&amp;nbsp; Therefore, it&amp;nbsp;poses several&amp;nbsp;questions in my&amp;nbsp;mind that I am looking for some suggestions,&amp;nbsp;advice or even&amp;nbsp;How Tos.&amp;nbsp;&amp;nbsp; I think hosting this stuff on the internet would make my life easier in terms of supporting the remote users and updating changes to the databases, but being a part-timer I have NEVER done any of this before.&lt;/P&gt;&lt;P&gt;1.&amp;nbsp;What is the simplest way&amp;nbsp;to deploy updates to the remote users?&amp;nbsp; Over internet?&lt;/P&gt;&lt;P&gt;2. If over the internet, would I host the updates on a ftp site&amp;nbsp;that the remote users&amp;nbsp;would download or have some way that the app automatically downloads the update?&lt;/P&gt;&lt;P&gt;3. Should I use a hosting site for the SQL Server Express databases so that I don't have to support 10 VPN connections?&lt;/P&gt;&lt;P&gt;4. If hosting the SQL Server Express databases on the internet&amp;nbsp;is the way to go, do you have any suggestion on who I should use?&lt;/P&gt;&lt;P&gt;5. Also, if am going to host the databases on the internet, how do I make the connection using SF?&lt;/P&gt;&lt;P&gt;Sorry about all of the NEWBIE questions!&amp;nbsp; But I want to do this the right way and I know you guys will give me the best advice.&lt;/P&gt;&lt;P&gt;Thank you and thanks again for this helpful forum and your great products.&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Wed, 02 Sep 2009 08:35:22 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24467.aspx</link><description>[quote]Greg that is a great suggestion.  However, how do I encrypt the connection via ES?[/quote]&lt;br&gt;
&lt;br&gt;
When you setup the ES data source, there is simply a property (flag) that indicates whether you want encryption.  There are others as well that include compression, etc.  These are all in the docs in how to setup the ES server.</description><pubDate>Wed, 02 Sep 2009 08:35:22 GMT</pubDate><dc:creator>Trent L. Taylor</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24466.aspx</link><description>It's pretty easy. I don't have the help docs available at the moment and since this is rarely done, I'm working with from a faulty memory board (er...my brain), so you'll need to check the help files. This is setup for each data source, so check that part of the help file.  You setup a key and a salt for the encryption in the data source config file, then when you setup the ES data source in the application, you provide the same key and salt. There may also be a flag to set that says it's encrypted.  That's it!</description><pubDate>Tue, 01 Sep 2009 23:44:22 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24461.aspx</link><description>[quote]SQL server is not access directly by users (it is access by ES) so SQL Server should NOT be available beyond firewall. ES is made visible via IIS to the outside world. Note you can encrypt the connection via ES, so only your app can get access (because it knows the key setup for ES). [/quote]&lt;P&gt;Greg that is a great suggestion.&amp;nbsp; However, how do I encrypt the connection via ES?&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Tue, 01 Sep 2009 22:05:23 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24460.aspx</link><description>[quote]Do you think I would be able to get away with SQL Server Express to handle this volume of clients and databases?[/quote]&lt;P&gt;Yes, you can always move up to another version of SQL Server as you grow. As long as you are comfortable with the limitations of Express you should be fine starting there (1 GB RAM, 4GB database size limit, etc)&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.microsoft.com/sql/prodinfo/features/compare-features.mspx?PHPSESSID=0324345d45ef1bf1f764044e03584cd0"&gt;http://www.microsoft.com/sql/prodinfo/features/compare-features.mspx?PHPSESSID=0324345d45ef1bf1f764044e03584cd0&lt;/A&gt;&lt;/P&gt;&lt;P&gt;[quote]Because&amp;nbsp;my clients are&amp;nbsp;using ES to access the SQL Server database, only ES needs to have access to SQL Server and I don't need to exposed the database to the internet for my clients to access the data...correct?[/quote]&lt;/P&gt;&lt;P&gt;Correct</description><pubDate>Tue, 01 Sep 2009 20:05:40 GMT</pubDate><dc:creator>Keith Chisarik</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24458.aspx</link><description>Jeff,&lt;br&gt;
&lt;br&gt;
Yep that is correct.  SQL server is not access directly by users (it is access by ES) so SQL Server should NOT be available beyond firewall.  ES is made visible via IIS to the outside world.  Note you can encrypt the connection via ES, so only your app can get access (because it knows the key setup for ES).  &lt;br&gt;
&lt;br&gt;
Not sure about using SQL Server Express, but that sounds like real low volume.  However, you might want a beefier version just for the admin tools. Hopefully others can weigh in on that issue with more knowledge.</description><pubDate>Tue, 01 Sep 2009 20:02:51 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24456.aspx</link><description>Keith,&lt;/P&gt;&lt;P&gt;It looks like I am going to use Hosting.com (HostMySite.com) which is the hosting site I believe you are using.&amp;nbsp; They are sending me a quote for the server and SQL Server Workgroup edition&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am going to have about 30 clients and 10 databases running on the server.&amp;nbsp; This app is a very low transactional system.&amp;nbsp; Probably about 1 update per minute to 5 tables.&amp;nbsp; Do you think I would be able to get away with SQL Server Express to handle this volume of clients and databases?&lt;/P&gt;&lt;P&gt;Also, let me see if I understand what you meant by not having my SQL Server exposed.&amp;nbsp; Because&amp;nbsp;my clients are&amp;nbsp;using ES to access the SQL Server database, only ES needs to have access to SQL Server and I don't need to exposed the database to the internet for my clients to access the data...correct?&lt;/P&gt;&lt;P&gt;Thanks so much for the help and advice!&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Tue, 01 Sep 2009 18:23:03 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24451.aspx</link><description>Trent can say more about ES, but since you will be moving to a dedicated server you should have RDP access, therefore you will not need your SQL "exposed", ES runs via HTTP via &lt;EM&gt;IIS &lt;/EM&gt;so if you just have your host allow that protocol and RDP for remote access, you should be fine. They SHOULD provide simple firewall requests, if they dont, look for a new host :)&lt;/P&gt;&lt;P&gt;Before we got our dedicated hardware firewall, I used the Windows firewall on Server 2003 and it was fine, only once we started doing more with the server did I need to go beyond that.</description><pubDate>Tue, 01 Sep 2009 17:13:35 GMT</pubDate><dc:creator>Keith Chisarik</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24427.aspx</link><description>[quote][b]Keith Chisarik (06/24/2009)[/b][hr]One note, if you open up your SQL server, makes ure you have a robust firewall that ideally will only allow traffic from your clients IP's. We were brute force attacked less than 24 hours after I exposed our SQL server, even with non-standard ports set up. I learned the true value of strong passwords that day.&lt;P&gt;We use HostMySite for our dedicated and virtual hosting needs and I could not possibly be happier.[/quote]&lt;P&gt;Hi Keith/SF,&lt;P&gt;To be able to use ES, I found out I need to have a dedicated server (using HostMySite), because ES licensing activation requires a MAC address which I did not know about.&amp;nbsp;&amp;nbsp; &lt;P&gt;Anyway, I am new to having a dedicate server&amp;nbsp;running&amp;nbsp;SQL Server Workgroup 2005&amp;nbsp;hosted on the internet.&amp;nbsp; I was hoping that you or SF could give me some best practices on securing the server, SQL Server and IIS.&amp;nbsp;&amp;nbsp; I am going to have&amp;nbsp;clients connect from many different locations including their homes and so hard coding client IPs in the firewall will be I think difficult to setup and manage.&amp;nbsp; I am willing to do that if necessary, but I just don't know about this stuff.&amp;nbsp; I know there is a first time for everything and I am willing to learn and follow advice.&lt;P&gt;Any advice anyone can give me would greatly be appreciated :D&lt;P&gt;Thanks,&lt;P&gt;Jeff</description><pubDate>Mon, 31 Aug 2009 19:51:27 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24420.aspx</link><description>Hi Trent,&lt;/P&gt;&lt;P&gt;Thank you so much for the info.&amp;nbsp; I am really looking forward to using ES.&amp;nbsp; I will pursue this avenue.&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Mon, 31 Aug 2009 16:18:34 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24415.aspx</link><description>I spoke with another SF User and he recommended the following:&lt;br&gt;
&lt;br&gt;
[url=http://www.hosting.com/dedicatedservershosting/]http://www.hosting.com/dedicatedservershosting/[/url]&lt;br&gt;
&lt;br&gt;
There is a rep named Eric Hutts that has been recommended as well.  This is a dedicated box for around $89 a month versus a shared server box.  I know that GoDaddy has an option like this as well.  If you do this you will have a full machine dedicated and it will resolve many of these types of issues.&lt;br&gt;</description><pubDate>Mon, 31 Aug 2009 15:05:47 GMT</pubDate><dc:creator>Trent L. Taylor</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24409.aspx</link><description>Hi Trent,&lt;/P&gt;&lt;P&gt;I am not sure what I&amp;nbsp;am to&amp;nbsp;do.&amp;nbsp; This is a brand new application I have been working on and testing in a beta site.&amp;nbsp; All has gone well and now it looks like&amp;nbsp;I am ready to release the production version&amp;nbsp;of&amp;nbsp;the software in the next couple of weeks.&amp;nbsp; The very last piece of the puzzle is to move the database from the local network to a hosting site and implement ES.&amp;nbsp;&amp;nbsp;&amp;nbsp;If all fails, I will need to set-up local installs of the database...Big Yuk!!!!&amp;nbsp; Unfortunately for me, I am new to web hosting and I was not aware that something like this would be a problem. This will be very disappointing, because I decided to build my solution with SF so that I could use ES for this purpose, and unfortunately, I told my customers&amp;nbsp;about this great feature.&amp;nbsp; &lt;/P&gt;&lt;P&gt;I don't know who Keith is.&amp;nbsp; I am willing to use another hosting site if it will guarantee me the ability to do&amp;nbsp;all of this.&amp;nbsp; &lt;/P&gt;&lt;P&gt;Is it possible for your to get me in touch with Keith?&amp;nbsp; Or just tell me what hosting site I should use.&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Mon, 31 Aug 2009 10:07:19 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24408.aspx</link><description>Well, I know that we have a number of users that are using hosting.  I think that Keith may be using this very hosting site so we may want to ask him what he did with them in regards to this.  I do not recall having a conversation with Keith when he published this, so he might be the person to ask in regards to the MAC address here.</description><pubDate>Mon, 31 Aug 2009 09:30:36 GMT</pubDate><dc:creator>Trent L. Taylor</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24398.aspx</link><description>Hi Trent,&lt;/P&gt;&lt;P&gt;Here is another response about the MAC address I received from WebHost4Life:&lt;/P&gt;&lt;P&gt;Hi Jeff, MAC address is sentative information and we will not provide it. &lt;BR&gt;&lt;BR&gt;Are you using MAC address to activate your License? I checked their official site and seems you can activate it at your Local PC first, move it to our server and then contact strataframe.net to reset your account so you can re-activate on the new machine. You activate online through the My Account area and download the license file as opposed to a live activation client.&lt;BR&gt;&lt;BR&gt;I'm not sure if you have to use new MAC address during "Re-activation". Would you contact strataframe.net about this first?&lt;BR&gt;&lt;BR&gt;&lt;/P&gt;&lt;P&gt;Trent, where do I go from here?&amp;nbsp; Please advise!&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Mon, 31 Aug 2009 06:54:26 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24386.aspx</link><description>[quote][b]&lt;BR&gt;Second, you [b]DO NOT[/b] want to add the public IP as the status IP address. This would allow every person in the world to see the status, password, etc. If you have access to the local IP, then use the local IP. Otherwise, you will want to secure this. This is a lot more detailed in the help documentation. There is a section in the DOCs that explain this setting that will be more helpful than my post. Let me know if you don't get it going.[/quote]&lt;P&gt;Oops &lt;IMG title=Crazy src="http://forum.strataframe.net/Skins/Classic/Images/MessageIcons/Crazy.gif" align=absMiddle&gt;&amp;nbsp; I should have&amp;nbsp;known that about the public IP.&amp;nbsp; However, I have looked in the Help File under Enterprise Server-&amp;gt;Step 3: Configure web.config and I do NOT see any additional details on how to secure things regarding the Web.config file for the key="StatusIpAddresses" value="127.0.0.1".&amp;nbsp;&amp;nbsp; Where is the info?&lt;P&gt;Thanks,&lt;P&gt;Jeff</description><pubDate>Sat, 29 Aug 2009 13:54:22 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24381.aspx</link><description>Hi Trent,&lt;/P&gt;&lt;P&gt;To activate the license I need to provide the MAC address.&amp;nbsp; So I contacted WebHost4Life about supplying me the MAC address of the server hosting my website and this is what they said:&lt;/P&gt;&lt;P&gt;Hi&lt;BR&gt;Please provide details of the .net application you purchased such as its official site and relevant urls of descriptions and requirements so that our supervisors can have an evaluation on the application. &lt;BR&gt;Regards&lt;BR&gt;&lt;/P&gt;&lt;P&gt;I am not sure where to go from here.&amp;nbsp; Please advise.&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Sat, 29 Aug 2009 13:17:35 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24365.aspx</link><description>First, go ahead and change the version to 1.7.0.0.  That will make sure to use the 1.7 references.  I will make sure that these are updated for the next point release.&lt;br&gt;
&lt;br&gt;
Second, you [b]DO NOT[/b] want to add the public IP as the status IP address.  This would allow every person in the world to see the status, password, etc.  If you have access to the local IP, then use the local IP.  Otherwise, you will want to secure this.  This is a lot more detailed in the help documentation.  There is a section in the DOCs that explain this setting that will be more helpful than my post.  Let me know if you don't get it going.</description><pubDate>Sat, 29 Aug 2009 11:17:12 GMT</pubDate><dc:creator>Trent L. Taylor</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24363.aspx</link><description>I am attempting to setup ES today.&amp;nbsp; I know it's a Saturday, but with my busy schedule it is the best time to attempt to do something like this without any interruptions.&amp;nbsp; However, I notice that after I extracted the ES.zip file into the&amp;nbsp;website,&amp;nbsp; the DataSources.config file references &amp;lt;TypeAssemblyVersion&amp;gt;1.6.0.0&amp;lt;/TypeAssemblyVersion&amp;gt;.&amp;nbsp; Since I am now using 1.7.0.1 version, am I going to have a problem with the ES website communicating with my windows app using 1.7.0.1?&amp;nbsp; &lt;/P&gt;&lt;P&gt;Also, in the Web.config file, for the key="StatusIpAddresses" value="127.0.0.1", am I to add the ip address of &lt;A href="http://www.prospecthelper.com"&gt;www.prospecthelper.com&lt;/A&gt; which is 66.226.20.91?&amp;nbsp; Just so that I am clear, I don't have to add every ip address of the computers running my windows&amp;nbsp;app to this key...right?&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Sat, 29 Aug 2009 11:09:11 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24345.aspx</link><description>Hi Greg,&lt;/P&gt;&lt;P&gt;Thanks for all of the great info.&amp;nbsp; I am going to setup a test this weekend and see if I can get everything working with ES&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Fri, 28 Aug 2009 07:06:01 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24322.aspx</link><description>[quote]I believe for my scenario, everytime I add a new database to my hosted SQL Server for a new group of clients I will add a new entry in the ES DataSources.config on the website assigning an unique DataSourceKey="Database100" along with the connection information pointing to the new database hosted on the internet.  When I setup the new group of clients' apps on their local computers, I will dynamically create a New EnterpriseDataSourceItem("Database100", "www.prospecthelper.com/databases", "Database100", ....).  Am I correct about this?[/quote]&lt;br&gt;
&lt;br&gt;
Close.  I don't have easy access to the help file, but there are two data source keys when using ES. One identifies the data source to ES and is setup in the DataSource.config file on the ES server. This is one the one you'd prompt the user for and store in the registry/wherever.  However, there is also one that is used by the BOs of your app.  This one should be the same for all the client datasources. I.e. you app is designed to hit a database with a specific schema, abstracted into BOs within the app (E.g. imagine a db has a Customers table, which is abstracted as a CustomersBO in the app).  The BO has a key that links it to a datasource setup for the app (your EnterpriseDataSourceItem). Look at the help page again to see which is which.  In your example, you are using "Database100" for both, which you don't want (if you did it this way, you'd have to change the key on ALL your BOs based on client...ugly and unnecessary). &lt;br&gt;
&lt;br&gt;
Because the EnterpriseDataSourceItem maps its own data source keys to those used by BOs, you can program against one set of BOs, with a set data source key, yet change what database the BO is hitting by simply changing the data source associated with that key (that is what you do in the SetDataSources method will code like DataLayer.DataSources.Add(...)).  As I mentioned, in my app, the same BOs can hit an arbitrary dev database using a direct connection via a standard SqlDataSourceItem or it can hit either a test database or the production database via EnterpriseDataSourceItems.  &lt;br&gt;
&lt;br&gt;
So, I'm gonna assume that the first data source key is the one for the BO and the second one if for ES (check, I could have it backwards), I'd assume you'd have code like this (pseudo code):&lt;br&gt;
&lt;br&gt;
[codesnippet]Sub SetDataSources&lt;br&gt;
&amp;nbsp;&amp;nbsp;'-- Check registry for existing ES datasource key.&lt;br&gt;
&amp;nbsp;&amp;nbsp;'&amp;nbsp;&amp;nbsp;&amp;nbsp;The GetESKey function would handle prompting and saving key&lt;br&gt;
&amp;nbsp;&amp;nbsp;'&amp;nbsp;&amp;nbsp;&amp;nbsp;if it wasn't already in registry&lt;br&gt;
&amp;nbsp;&amp;nbsp;Dim esKey As String = GetESKey()&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;'-- Create ES data source item. Note that default BO key of "" is used.&lt;br&gt;
&amp;nbsp;&amp;nbsp;'&amp;nbsp;&amp;nbsp;&amp;nbsp;This not only points to the correct ES server it also maps&lt;br&gt;
&amp;nbsp;&amp;nbsp;'&amp;nbsp;&amp;nbsp;&amp;nbsp;the appropriate ES data source to the data sources used by&lt;br&gt;
&amp;nbsp;&amp;nbsp;'&amp;nbsp;&amp;nbsp;&amp;nbsp;the BOs in the app. I.e. if the BO has a key of "", then ES will use&lt;br&gt;
&amp;nbsp;&amp;nbsp;'&amp;nbsp;&amp;nbsp;&amp;nbsp;the datasource configured with the esKey to connect to the db.&lt;br&gt;
&amp;nbsp;&amp;nbsp;Dim esSource As New EnterpriseDataSourceItem("", "www.prospecthelper.com/databases", esKey, ....)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;'-- Add this as a data source for app.&lt;br&gt;
&amp;nbsp;&amp;nbsp;DataLayer.DataSource.Add(esSource)&lt;br&gt;
End Sub[/codesnippet]</description><pubDate>Thu, 27 Aug 2009 00:54:52 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24321.aspx</link><description>Hi Greg,&lt;/P&gt;&lt;P&gt;Thank you. Your explanation&amp;nbsp;truly helped.&amp;nbsp; I have looked at the help file as you suggested and I think I understand how it works.&amp;nbsp; I believe for my scenario, everytime&amp;nbsp;I add a new database to my hosted SQL&amp;nbsp;Server&amp;nbsp;for a new group of clients I will add a new entry in the ES DataSources.config on the website assigning an unique DataSourceKey="Database100" along with the connection information&amp;nbsp;pointing&amp;nbsp;to&amp;nbsp;the new database hosted on the internet.&amp;nbsp; When I setup the new group of clients' apps&amp;nbsp;on their local computers, I will dynamically create a New EnterpriseDataSourceItem("Database100", "www.prospecthelper.com/databases", "Database100", ....).&amp;nbsp; Am I correct about this?&lt;/P&gt;&lt;P&gt;To dynamically create the EnterpriseDataSourceItem, I was thinking that when the app&amp;nbsp;is&amp;nbsp;started for the first time, it would query the user for the DataSourceKey ("Database100") which I will provide to them.&amp;nbsp; Somehow after verifying they have enter the correct key value, I was going to write it to the registry.&amp;nbsp;&amp;nbsp;&amp;nbsp;Then I can retrieve it and dynamically create the EnterpriseDataSourceItem everytime they start the app.&amp;nbsp; Is this a good way of handling this in my windows app?&lt;/P&gt;&lt;P&gt;Also, I have a Windows management app to enable the customer to manage the system.&amp;nbsp; In some cases, the customer will want to look at (read only) a 100,000 records at one time loaded into a DevExpress grid.&amp;nbsp; Right now without ES, it takes 2-1/2 minutes to load only 25,000 records from the database hosted on the internet.&amp;nbsp; I am assuming by&amp;nbsp;using ES I will be able to load the&amp;nbsp;100,000 records&amp;nbsp;in a reasonable amount of&amp;nbsp;time (hopefully less than 30 seconds)&amp;nbsp;even&amp;nbsp;when&amp;nbsp;retrieving them over the internet.&amp;nbsp; Is this a reasonable expectation when using ES?&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Wed, 26 Aug 2009 22:58:03 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24320.aspx</link><description>Jeff,&lt;br&gt;
&lt;br&gt;
ES can definitely connect to any number of databases, just like you can have any number of data sources which connect to the various BOs. I'm currently using it to connect to an app database and a security database.  I change both of these on the fly (to switch between dev, test and prod database sets).  I also change between direct connections and ES connections.  It is really flexible. &lt;br&gt;
&lt;br&gt;
First, take a looks that the "Configuring DataSources.config" (Enterprise Server &gt; Deploying the Enterprise Server) in the help file. There is an example that shows three data sources being configured. You'd have a datasource for every database available (i.e. lots of them). Then you would need to create the appropriate ES data source items in SetDataSources of AppMain.vb (program.cs).  Here you would map the BO key to the ES key. In that same help topic, the EnterpriseDataSourceItem constructor parameters are explained. &lt;br&gt;
&lt;br&gt;
Now in your case, I'm guessing you'd need to map a group of users (e.g. by client) to the appropriate enterprise data source. Then you'd dynamically build the EnterpriseDataSource based on the client.  This could get complicated because you won't know who the user is yet (login happens later if you are using SF RBS).  However, if you used a common security db, which included the table(s) that did the mapping, you could set the security up in SetDataSources and then setup the app db after they logged in, but before any UI is presented.  &lt;br&gt;
&lt;br&gt;
My understanding of licensing is that you get a license for every user that will access data via ES.  Last I checked, you could also increase to more licenses as needed.  If you have 50 users spread across 10 clients, you'd need 50 licenses to use SF.  I believe when you hit around a 100, it just goes unlimited.  Check the SF store for prices.  The prices are yearly fees. ES doesn't really care how many data sources you're using, just how many users are using it.  This is of course not the "official" word on it, just my understanding. I've been using ES for a couple of years now. Love it.</description><pubDate>Wed, 26 Aug 2009 21:22:49 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24318.aspx</link><description>Hi Greg,&lt;/P&gt;&lt;P&gt;Thanks for the opinion on separate databases.&amp;nbsp; I also felt it would be better to have separate databases for each customer for the same reasons you said.&lt;/P&gt;&lt;P&gt;However, I am not sure you are correct on the ES setup.&amp;nbsp; See Post# 24301.&amp;nbsp; As you can see, Trent states that a single ES Setup/Instance is configured for a single database.&amp;nbsp;&amp;nbsp;&amp;nbsp;So according to Trent, for all practical purposes, I really can't have different clients connect through a single instance of ES to different databases attached to a single SQL Server hosted on the internet.&amp;nbsp;&lt;/P&gt;&lt;P&gt;If I&amp;nbsp;am still confused&amp;nbsp;about&amp;nbsp;how ES works and its licensing, could someone&amp;nbsp;please explain to me in detail what exactly I can do with ES when it comes&amp;nbsp;to having&amp;nbsp;different groups of clients connect&amp;nbsp;over the internet to different databases attached to a single SQL Server hosted on the internet and in my case hosted by&amp;nbsp;WebHost4Life.com?&amp;nbsp; And how ES licensing works in this scenario?&lt;/P&gt;&lt;P&gt;Also, let me say this to help clarify my scenario.&amp;nbsp; Each group of clients will be given a dedicated database.&amp;nbsp; In other words, a&amp;nbsp;group of&amp;nbsp;clients will only be setup to connect to one database.&amp;nbsp; This group of clients will&amp;nbsp;NOT have the option to connect to another database.&amp;nbsp; Again, all of the databases for different groups of clients will be attached to a single SQL Server hosted on the internet.&amp;nbsp; I hope this helps explain better what I want to do with ES.&lt;/P&gt;&lt;P&gt;If I am not explaining my scenario in terms that&amp;nbsp;SF understands, please let me know and I will attempt to explain it in a different way.&amp;nbsp; Better yet, is there someone I can call to discuss this in detail?&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Wed, 26 Aug 2009 17:44:18 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24313.aspx</link><description>Jeff,&lt;br&gt;
&lt;br&gt;
I'm not sure if you are asking about the databases because your concerned that ES can only connect to a single database or because of licensing issues with a hosting service (i.e. they'd charge per database). There are no technical issues with ES. You can use a single ES installation to connect to N number of databases. I.e. you could have one ES server/instance and connect to 100s of databases through it.  Assuming the ES server and the database server(s) are on the LAN together, and that the ES server could handle all the requests (I pretty sure it can be clustered to scale if needed), this would work well.  &lt;br&gt;
&lt;br&gt;
In general, I'd leave the databases separate if I could. While you have some increased effort when deploying database changes with separate databases, this is negligible when using DDT.  You also have better control of what gets upgraded with multiple databases. Situations such as if a client doesn't want to upgrade? Or you have one that needs a critical fix NOW, but you don't want to rush it out to everyone else just yet.  &lt;br&gt;
&lt;br&gt;
If you have a single master database, this increases the complexity of the app/db. Now every table, BO and browse dialog needs to be client aware. You'll spend more time optimizing queries/views/sprocs. Also, if a database becomes corrupt, all your clients go down while you fix it for the one. If you get a huge client that needs there own server, you'll have more work to do get their data out of the master, etc. In general the master database is just a PIA.&lt;br&gt;
&lt;br&gt;
Having said that, I use the master database concept, though in a different situation. In my case the partitions are on "projects" which are in the context of a single business (consulting), so I have to have all the projects in a single database.  &lt;br&gt;
&lt;br&gt;
Hope that provides some insight into what you might get into going the master database route.  I'd be interested in what others think on this matter.</description><pubDate>Wed, 26 Aug 2009 11:17:55 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: How To on connecting to a hosted SQL Server Express database</title><link>http://forum.strataframe.net/FindPost24312.aspx</link><description>Trent,&lt;/P&gt;&lt;P&gt;That's great news.&amp;nbsp; &lt;/P&gt;&lt;P&gt;I do have a question that I would like your opinion on.&amp;nbsp; Right now I am maintaining a separate database for each customer who will connect 2-4 client licenses to it.&amp;nbsp; On the average, each database will contain up to 500,000 records.&amp;nbsp; In my mind and based on my limited knowledge of SQL Server, it seemed like a good idea by keeping a clear separation of the customer databases from one another.&amp;nbsp; Based on my last email and the ES licensing cost issues I was facing, I was considering&amp;nbsp;modifying my database and code so that&amp;nbsp;all of the customer databases&amp;nbsp;can reside in&amp;nbsp;a single master database.&amp;nbsp; Although this requires a lot of work in reconfiguring the database&amp;nbsp;and refactoring of my code,&amp;nbsp;I felt&amp;nbsp;that in the long&amp;nbsp;run it would be worth it to be able to use ES so that I can host the database on the internet.&amp;nbsp; In fact, one of the main reasons why&amp;nbsp;I decided to use SF on this project was because when I was in the training class last year&amp;nbsp;you covered the benefits of ES.&amp;nbsp; I knew at some point I would want to be able to host the database(s) on the internet&amp;nbsp;while at the same time keep my app&amp;nbsp;in Windows Forms with the ability to load thousands of records and not have to redesign it to run&amp;nbsp;as an ASP.NET app.&amp;nbsp; &amp;nbsp;ES&amp;nbsp;was the perfect&amp;nbsp;solution.&lt;/P&gt;&lt;P&gt;Of course, being able to purchase an affordable licensing for my current scenario is the easy way to go.&amp;nbsp; However, I am willing to make this effort if you see some major benefits for me to have a single master database hosted on one web site.&lt;/P&gt;&lt;P&gt;What is your opinion?&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jeff</description><pubDate>Wed, 26 Aug 2009 10:02:56 GMT</pubDate><dc:creator>Jeff Pagley</dc:creator></item></channel></rss>