Как заставить silverlight получать свои данные из MySQL

Я написал небольшое приложение для тестирования Hello World в Silverlight, которое я хочу разместить на сервере Linux / Apache2. Я хочу, чтобы данные поступали из MySQL (или другой совместимой с Linux базы данных), чтобы я мог связываться с данными в базе данных.

Мне удалось заставить его работать с помощьюMySQL, Connector / .NET:

<code>MySqlConnection conn = new MySqlConnection("Server=the.server.com;Database=theDb;User=myUser;Password=myPassword;");
conn.Open();
MySqlCommand command = new MySqlCommand("SELECT * FROM test;", conn);
using (MySqlDataReader reader = command.ExecuteReader())
{
     StringBuilder sb = new StringBuilder();
     while (reader.Read())
     {
         sb.AppendLine(reader.GetString("myColumn"));
     }
     this.txtResults.Text = sb.ToString();
}
</code>

Это прекрасно работает, если я полностью доверяю опубликованному приложению ClickOnce (или, по крайней мере, SocketPermission) иrun it locally.

Я хочу, чтобы это выполнялось на сервере, и я не могу заставить его работать, всегда заканчивая исключением разрешения (SocketPermission не разрешен).

База данных размещается на том же сервере, что и приложение Silverlight, если это имеет значение.

EDIT Хорошо, теперь я понимаю, почему плохая идея иметь учетные данные БД в клиентском приложении (очевидно). Как люди делают это тогда? Как вы защищаете прокси-веб-службу, чтобы она передавала данные клиенту / базе данных безопасным способом? Есть ли примеры в интернете?

Конечно, я не могу быть первым человеком, который хотел бы использовать базу данных для питания приложения Silverlight?

Ответы на вопрос(6)

Ваш ответ на вопрос