2014-02-09 55 views
0

我正在开发一个C#MVC4互联网应用程序,并希望从这个数据库获取数据并在我的Xamarin应用程序中使用这些数据。如何从MVC Internet应用程序获取Android应用程序中的DbSets?

这里是我的MVC中的Context类:

public class DatabaseContext : DbContext 
{ 
    public DbSet<MapLocation> MapLocations { get; set; } 
    public DbSet<MapLocationCompany> MapLocationCompanies { get; set; } 
    public DbSet<MapLocationDetail> MapLocationDetails { get; set; } 
} 

这里是我使用在web.config我的MVC的连接字符串:

<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=CanFindLocation-20140207193713;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\CanFindLocation-20140207193713.mdf" providerName="System.Data.SqlClient" /> 

在我Xamarin的应用程序,我怎样才能得到我的MVC 4上下文类中的每个DbSet的DbSet?

这可能吗?我可以提供一些建议和/或一些帮助吗?

在此先感谢

回答

0

您通常不直接从移动客户端访问数据库。这是一个可怕的安全风险。

通常情况下,最好的方法是创建一个Web服务层,用于代理客户端和数据库之间的连接。这些服务将从服务器向客户端发送json/xml数据。客户端将数据解析为域类,如有必要,可能会将它们本地存储在SQLite数据库中。然后使用另一个服务调用在服务器上更新客户端上的更改,然后在服务器的数据库上处理和更新它们。

+0

我在哪里可以获得一些示例代码来尝试在您的答案中描述的上述操作?你推荐我看什么? – Garry

+0

http://docs.xamarin.com/guides/cross-platform/application_fundamentals/web_services/。 .NET中有很多关于服务的文档,无论您使用的是哪种客户端,主体都是一样的。 – Jason

相关问题