根据第一列的值查询 ADO.NET sql 数据库的行(C#,Xamarin)

Querying the row of an ADO.NET sql database given the value of its first column (C#, Xamarin)

我的 C# 技能非常有限。我的代码背景是 MATLAB、FORTRAN,最近,Python。我在 visual studio 中使用 Xamarin 到 bootstrap 一个智能设备应用程序,以便在内部进行快速演示。

在此应用程序的其他地方,我使用 ADO.NET 创建了一个 SQLite 数据库,并使用用户 select 来自选择器、微调器和文本输入的条目填充它。每行是那个人的 'profile'。

现在,应用程序的另一部分采用第一列(配置文件名称)并填充一个微调器,这样用户就可以 select 自己:

    //Check if database exists and get rider names for selection
        bool exists = File.Exists(pathToDatabase);
        string nameString = string.Empty;
        if (exists)
        {
            Console.WriteLine("Reading database");
            var connection = new SqliteConnection("Data Source=" + pathToDatabase);
            connection.Open();
            using (var contents = connection.CreateCommand())
            {
                contents.CommandText = "SELECT [Name] FROM Riders";
                var r = contents.ExecuteReader();
                while (r.Read())
                    nameString += (r["Name"].ToString() + ",");
                connection.Close();
            }
        }

        //Populate spinner with Rider Names
        string[] nameList = nameString.Split(',');
        var ridernameAdapter = new ArrayAdapter<string>(this, Android.Resource.Layout.SimpleSpinnerItem, nameList);
        ridernameAdapter.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem);
        RiderSelectSpinner.Adapter = ridernameAdapter;

效果很好,名字出现在我的微调器中,用户可以 select。

我来这里的原因是,我现在想在给定第一列的值(名称).

我有所有代码可以识别他们 select 自己。有人可以指导我在 ADO.NET 中形成一个查询,在给定第一行条目的情况下获取该行的其余部分吗?像下面这样的东西?

                contents.CommandText = "SELECT * FROM Riders WHERE [Name] = @Name"; //FIX
                contents.Parameters.AddWithValue("@Name", Name);

感谢您的宝贵时间和帮助。

var conn = new SQLite.Net.SQLiteConnection(plat, path); 
var resunt = conn.Table<Riders>().FirstOrDefault(x => x.Name == name); //Using LINQ or 

var conn = new SQLite.Net.SQLiteConnection(plat, path);     
var resunt = conn.Query<Riders>("SELECT * FROM [Riders] WHERE [Name]=" + name);