[dba-VB] Access data across the internet

Shamil Salakhetdinov shamil at smsconsulting.spb.ru
Sun Aug 30 02:38:28 CDT 2009


Hi John,

I did read comments from the ref you quoted here - they are a usual "junk" -
I mean real developers who use MS software do not waste time on writing
comments how bad this MS software is :) I can assure you (as many other
developers here) it's not that bad as you can find reading all that "junk
comments".

BTW, I liked this comment, which I classify as very helpful, and coming from
experienced developer (as I also am BTW :)O:

<<<<<<<<<<
Ben Kloosterman, 21 June 2009, 20:38:34 (Pacific Standard Time, UTC-08:00)

The problem is not with WCF (or Axis) but with people who choose overly
complicated scenarios. WCF is far superior to Axis though because Services
framework allow things people use them. 

eg 
- Security 95% of the time no transport security/encryption is sufficient.
- Use custom headers dont fudge it like the article , this method is very
common .
- Use complicated types , inheritcance , interfaces , collections etc ..
KISS and use the DTO pattern. ( DOnt pollute your business domain with the
need to tranport it)

The big advantage REST has is you cant do the fancy things but everything
you can do with REST you can do with WCF and keep it or even more simple. 

Ben
>>>>>>>>>>>

And BTW, my current proposal is to use SOAP (ASP.NET 2.0) Web Services for
starters - they are easier to start with = you can create such Web Services
within VS2008. Later on you can convert them to WCF/REST web services -
you'll just need to change interface/façade in most of the cases.

And a sample Web Service I created here is exactly a SOAP web service:

http://shamils-4.hosting.parking.ru/MSAccess/MSAccessWebService.asmx

You can find comments on its interface in P.S. of this message. And you can
consume this web service using sample code I provided in my previous
postings within this thread. (All the C# code for this Web Service including
comments is about 270+ code lines long - and that's all you have to write -
no need to code manually .wsdl etc. )

Some of my experience with Web Services:

1) One of my overseas customers (WA) did use web service running on my
hosting site (Moscow, Russia, and it runs within common application pool)
for several months. And this web service was queried dozen times within a
second from his programs running on 5+ computers from his LAN there. Result:
no any major trouble at all.

2) Another customer does use web service developed here to synchronize
two-way "field-force automation" local MS SQL Express databases with central
MS SQL database running behind large ASP.NET application. No problem.

Etc.

Recap: Stop reading "junk comments", start acting.

Thank you.

--
Shamil

P.S. Sample web service interface (Note: this sample web service was made in
one go, without any "heavy load" on brain cells, within a couple of hours
including several times of (XCOPY) deployment on ASP.NET hosting site,
testing etc. - I mean with some more work it can be done 100% "bullet-proof"
but even now it should be strong enough - you can test it):

/// <summary>
/// Test method - Hello, World!
/// </summary>
/// <returns>String 'Hello MS Access World!'</returns>
[WebMethod]
public string HelloWorld()

/// <summary>
/// Stores given file in Web service memory
/// </summary>
/// <param name="fileName">File name</param>
/// <param name="fileText">File text</param>
/// <returns>Stored file length if file stored successfully,
/// otherwise throws ApplicationException </returns>
/// <exception cref="ApplicationException">fileName parameter is null or
empty</exception>
/// <exception cref="ApplicationException">fileText parameter is null or
empty</exception>
/// <exception cref="ApplicationException">fileName parameter's value length
exceeds 255 chars</exception>
/// <exception cref="ApplicationException">fileText parameter's value length
exceeds 100KB chars</exception>
/// <remarks>
/// If the total length of stored files exceed 3MB then web service deletes
/// stored files until there will be enough space to store a new file.
/// </remarks> 
[WebMethod]
public int StoreFile(string fileName, string fileText)

/// <summary>
/// Gets stored on web service side file
/// </summary>
/// <param name="fileName">File name</param>
/// <returns>Stored file text if file retrieved successfully,
/// otherwise throws ApplicationException </returns>
/// <exception cref="ApplicationException">fileName parameter is null or
empty</exception>
/// <exception cref="ApplicationException">fileName parameter's value length
exceeds 255 chars</exception>
/// <exception cref="ApplicationException">{fileName} - file not
found</exception>
[WebMethod]
public string GetFile(string fileName)

/// <summary>
/// Delets stored on web service side file
/// </summary>
/// <param name="fileName">File name</param>
/// <returns>True if file deleted successfully,
/// otherwise throws ApplicationException </returns>
/// <exception cref="ApplicationException">fileName parameter is null or
empty</exception>
/// <exception cref="ApplicationException">fileName parameter's value length
exceeds 255 chars</exception>
/// <exception cref="ApplicationException">{fileName} - file not
found</exception>
[WebMethod]
public bool DeleteFile(string fileName)

/// <summary>
/// Gets Web Service usage statistics
/// </summary>
/// <returns></returns>
[WebMethod] 
public string GetWebServiceUsageStatistics()

/// <summary>
/// Gets 'Lorem Ipsum...' text
/// </summary>
/// <param name="amount">Speficies amount of <paramref name="what"
parameter/></param>
/// <param name="what">Defines generation units: words, paras, bytes,
lists</param>
/// <returns></returns>
[WebMethod] 
public string GetLoremIpsumText(long amount, string what)


-----Original Message-----
From: dba-vb-bounces at databaseadvisors.com
[mailto:dba-vb-bounces at databaseadvisors.com] On Behalf Of jwcolby
Sent: Sunday, August 30, 2009 5:21 AM
To: Discussion concerning Visual Basic and related programming issues.
Subject: Re: [dba-VB] Access data across the internet

http://www.hanselman.com/blog/BreakingAllTheRulesWithWCF.aspx

Read all the comments at the bottom.

John W. Colby
www.ColbyConsulting.com

<<< snip>>>
 

__________ Information from ESET NOD32 Antivirus, version of virus signature
database 4380 (20090829) __________

The message was checked by ESET NOD32 Antivirus.

http://www.esetnod32.ru
 





More information about the dba-VB mailing list