将Xamarin连接到Python MySQL连接器

时间:2018-08-17 16:34:28

标签: c# python mysql database xamarin

我正在做一个Xamarin应用程序,我想使用Python连接器将它连接到MySQL数据库,并且我不确定如何在C#Xamarin代码和Python连接器之间交换信息。例如,我想将用户在Xamarin应用程序中输入的登录信息发送到数据库。

Python代码:

import mysql.connector
import requests
from datetime import date, datetime,timedelta

cnx = mysql.connector.connect(user='root',password='root',
                                database='user_account', host='localhost', port='3310')

cursor = cnx.cursor()
params = {'key1' : 'value1', 'key2' : 'value2', 'key3' : 'value3'}
r = self.request.GET.get('email')
print(r)

add_user = ("INSERT INTO login_info " "(email, password, date) " "VALUES (%s,%s,%s)")

user_data = (params[0], params[1], params[2])

cursor.execute(add_user, user_data)
cnx.commit()
cursor.close()

cnx.close()

C#代码:

public static void AddUserToDatabase()
        {
            WebClient client = new WebClient();
            Uri uri = new Uri("http://localhost/login.py");
            NameValueCollection postData = new NameValueCollection();
            postData.Add("email", "testEmail@email.com");
            postData.Add("password", "superTestPassword");
            postData.Add("date", DateTime.Now.ToShortDateString());
            Encoding.UTF8.GetString(client.UploadValues(uri, postData));
        }

感谢您的回答。

1 个答案:

答案 0 :(得分:1)

编辑:我误解了您使用MySQL的目的。

好吧,对于初学者来说,Internet和StackOverflow上有大量预先存在的资源可以帮助回答这个问题。

This is from a while back but should still work.

请勿在应用中建立与数据库的直接连接。 相反,请通过Web API或使用Azure等系统。有多种方法可以从应用程序中提取C#代码,并且坦白地说,它们非常普遍,因此,如果您在Xamarin代码中具有登录凭据,则可以想象它们是公共的。