As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I have a WPF application that contains two databases(local and distant).I'd connect to the distant database and execute some queries of selection (no modification) , for the local one I need to read,delete and update many informations. I have to choose between Ado.net and Linq to sql.
So, what is the best choice between them and what are the configuration parametrs needed in the distant Sql Server to accept connection from other PC?
I have to choose between Ado.net and Linq to sql.
LINQ-to-SQL is basically an ORM wrapper around ADO.NET. However, when I hear the word "distant", I would usually assume that direct ADO.NET connectivity is no longer appropriate. If the boxes are on different networks, or separated by firewalls / sub-nets / etc, then the most appropriate thing would be to expose your data via a web-service (that internally may use ADO.NET or LINQ-to-SQL, but that is entirely an implementation detail). That web-service could be exposed via WCF, ASMX, ServiceStack, manually-implemented REST, or any other kind of web-based access technology you like the look of.
Then the only question is: when running on the same network ("local" in your example)... should it continue to use the web-service (for code-reduction, etc), or should it also have a direct (ADO.NET / LINQ-to-SQL) connection option? The first would be no extra code (because the web-service already exists to support "remote" clients); the second (direct) option may in some (limited) scenarios have some performance advantages.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
Is there any way to configure mySql as a database server with concurrency access?
I want to develop a windows application with a open source database where multiple access at the same time. as per the research I did on the internet, Mysql is the best but just want to make sure that Mysql capabilities in the above scenario.
any help appreciated.
I believe that you're misunderstanding something, but I'm not sure what, so I'll just explain stuff a bit :-)
MySQL's single and sole purpose is what you describe. It's to store data and allow it to be accessed concurrently without too many problems.
Your question is a bit like asking "Is there any way to use a hammer to hit a nail? I have a large amount of nails here, and I need to fix some pieces of wood to each other, and I need something to slam them in. Will a hammer do?"
That said, besides MySQL, there's also nice alternatives like PostgreSQL. PostgreSQL is a bit more full-featured, and has recently been taking over MySQL in popularity. Also, "MariaDB" is, effectively, the new name of the latest MySQL version, so you might want to google for that.
Finally, since you want to develop a Windows application, maybe neither of these databases are a good choice - if every user needs to install a database server in order to use your application, installation will be difficult and error-prone (believe me - I have once, maintained the installers for a Windows application that depends on a MySQL server on the user's computer, and it's hell). You could also look into SQLite, a database (which also supports concurrent access) that you can bundle immediately with the program you're making. It's really just a library that you link into your program, so it's not a server at all. But it's a full-featured SQL database.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I am thinking of developing a CRM type database application in C# that I can sell to clients, and am considering using Microsoft SQL Server as the back-end.
I would like potential clients to have the option of having the back-end either local or on a hosted platform. If they choose the hosted option - that would be fine as we/third-party, could provide the SQL/Server platform. However, if they wish to run locally, I wouldn't want them to have to pay for the licencing of SQL (as well as for my software).
Is there a free distributable version of SQL Server, that is able to cope with up to 30(ish) users, and capable of quite a lot of work? I was thinking about Express - but not sure if that would be the right path.
Any suggestions (SQL Server or otherwise) would be greatly appreciated.
Thank you.
There are some limitations in SQL Server Express (10Gb per database, 1Gb of RAM and only one physical CPU).
May I suggest MySQL, open source and works well with .Net as it supports Entity Framework.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Can anyone give any examples of a single tier architecture that is web-based? I understand that single tier means that all layers are run in the same machine... Would a soap service that returns a number from a database be an example or is that two tiered?
Would a soap service that returns a number from a database be an example or is that two tiered?
Using a database back-end is a two-tier architecture. Another example is the old-school ASP-style of development where the .asp file directly accesses the database.
Can anyone give any examples of a single tier architecture that is web-based?
A single-tier might be a webpage that directly opens a csv file and reads from it. Another example is a web-service that does not require data at all, like a time service.
Actually there is no Single tier web application.
Yes I insist :)
Because the Web Browser and the client machine is actually a tier.
But to make things easy the community assumes to drop this tire due to it's out of developer hands.
Anyway if you consider that any web page which is not dealing with database OR in better way like csharptest.net said :
A single-tier might be a webpage that directly opens a csv file and reads from it. Another example is a web-service that does not require data at all, like a time service
You may consider that as Single tier
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm working on a system (.NET website) that uses class libraries to manipulate data located on a MS SQL server. Lately, I've been wondering about ditching those classes and doing the data manipulation using WCF. That way I could consume the services in Android, Java, etc...
Well, some classes return a large amount of data, say a 125x10000 datatable... and I'm worried that WCF will not be able to handle that... or maybe that the system's performance will suffer too much.
What do you guys think?
Is WCF ok to to use for retrieving/updating large amounts of data on a multi-user system?
If not, what are some other options?
Maybe I'm misunderstanding what you're trying to achieve, but it sounds like what you're suggesting is moving the database load to the application side - pulling entire data tables to the application in order to run your would-be DB operation.That's kind of what the SQL server is designed for.
By doing so, you're putting all of the load onto your application server and underutilizing the DB area of concern. Write some code to handle locking and then let the database do it's job. You'll end up writing more procs, but that's normal, and better in the long run as you can edit them on the back end without having to recompile app code. IMO do all of your database operations in your stored procedure and return the smaller result sets through WCF.
I mean... are you really planning on piping that much info over a WCF service onto cellphone?!
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I mainly develop Java EE webapps so I don't have any experiences with desktop application at all. Now a friend of mine needed a little tool for daily business which I've build with Seam and a MySQL db in the background. In case of my experience this was done really fast.
Now I want to go further and produce a real small desktop app for him. I've looked at various options and developing a gtk# application with Mono seems my way to go for this little project. The application should be small and fast so I was thinking if a whole MySQL server is needed for my solution here.
What options I could evaluate instead of a database server which has to run as a service on the workingmachine? Storing data as XML?
To clarify the application has now 6 entites (Products, ProductTypes, Colors, Sizes, Orders, Production). On daily basis orders and production are added to a ProductType, very simple stuff.
XML would work for small sets up data, but if you are going to have larger sets I would recommend something like sqlite.
http://www.sqlite.org/
I have looked at various options and I tend to like SQLite
for client applications on .NET. It is a file based solution that does not require a database server to be installed on the machine, much like using an Access database but better.
Try SQLite
Can be other DB will interest, for example, Db4o or SQL CE 4.