Click here to Skip to main content
15,886,519 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Hello

I am trying to find the most effective way to program an application I have to make.

Here is the scenario:

I have a server running ASP.NET C# Web forms application.

You can view it live: http://fragems.mrincapps.co.za - please note it may take a little while for initial load.

That is a fully fledged event management system and is working fine now.

I need to add an access control system onto it.

Now the way the access control works is that you don't tell the system where you are, The system tells you where you are.
What I mean by that is that the system stores your current location,
eg: 0 = outside event
1 = Inside area 1

I need to make a c# desktop application that connects to the access control and scanning devices via a serial port.

When the client scans their access disk the disk number and access device number is sent through to the c# app: eg: [1][fggdfG4]
Device ID [^] [^] User access code - is unique

Unfortunately doing a web request every time would be way to slow so I need to find a way to store the users name, surname, current area and access code locally and update every so often.

Does anyone have a good idea ?

Thanks!

Regards
Mitchell
Posted
Comments
Shibashish_Choudhury 18-Jul-13 10:49am    
use file system and create files for your purpose..say a text file to store all your required data, whenever the user gets online, the file gets updated...
M.R. Inc 18-Jul-13 10:57am    
Hello,

Thanks for the comment.

I don't want to use text files as they are slow and inefficient.
Also, it might cause issues as it cant be read simultaneously.
So when it is updating, which could be anywhere up to 4000 people, the system cant use the access control because the file is in use.

Also, to read through all the data to find one code is bad programming ethics for such a large quantity of people.

I can use a database on the client side, but which database system do I use?
MSSQL, MySQL, ACCESS - 2003 / 2007

etc...
The question is, how can I efficiently transfer updates to the client with the least amount of bandwidth and in the most effective manor.

Thanks
Jean A Brandelero 18-Jul-13 16:12pm    
Go to MSSQL, if you are using Asp.net, imo.
What about just saving a Guid? Save guids on the server and just send that guid on the request.
M.R. Inc 18-Jul-13 16:28pm    
Hello
Thanks for the response.

But if you read above in my last message I do not want to do on request stuff.

By having to do a request every time the access token is scanned will slow the system down.

I am already using mssql

And have previously done something similar if I understand correctly what you said.

Thanks
Jean A Brandelero 19-Jul-13 7:17am    
All you need is to get data synched every time the client machine start the application?
What about sql replication?

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900