sql >> Databasteknik >  >> RDS >> Sqlserver

Direkt åtkomst till en SQL-serverdatabas i Xamarin.Forms

Du kan inte komma direkt åt en SQL-server från ditt pcl-projekt i Xamarin.Forms eftersom System.Data.SqlClient är inte tillgänglig på pcl.

Men du kan göra det genom en beroendetjänst .

Först i ditt PCL-projekt förklarar du tjänst

public interface IDbDataFetcher
    {
        string GetData(string conn);
    }

Sedan implementerar du servicegränssnittet på ditt Android-projekt

[assembly: Dependency(typeof(DbFetcher))]
namespace App.Droid.Services
{
    class DbFetcher : IDbDataFetcher
    {

        public List<string> GetData(string conn)
        {
            using (SqlConnection connection = new SqlConnection(conn))
            {

                SqlCommand command = new SqlCommand("select * from smuser", connection);
                try
                {
                    connection.Open();
                    SqlDataReader reader = command.ExecuteReader();
                    while (reader.Read())
                    {
                        data.Add(reader[0].ToString());
                    }
                    reader.Close();
                }
                catch (Exception ex)
                {
                    //Console.WriteLine(ex.Message);
                }
            }
            return data;
        }
    }
}

Även om det är en lösning är det en dålig ett. Använd alltid webbtjänster för dina mobilappar




  1. KNIME

  2. Lägg till en främmande nyckelrelation mellan två databaser

  3. Java SQLData - Casta till användarobjekt med en lista/array?

  4. Kontrollera Constraint i SQL