c# – 使用点表示法或索引访问DynamicModel.Query
发布时间:2020-12-15 21:42:56 所属栏目:百科 来源:网络整理
导读:我正在使用Massive micro-orm和SQL Server 2008R2与.NET framework 4.0. // This is my model public class sUser : DynamicModel { public sUser() : base(Model.strConnection,"Users","UserId") { } } 还有另一课…… using System; using System.Data; u
我正在使用Massive micro-orm和SQL Server 2008R2与.NET framework 4.0.
// This is my model public class sUser : DynamicModel { public sUser() : base(Model.strConnection,"Users","UserId") { } } 还有另一课…… using System; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Web; using System.Xml; using System.Dynamic; using System.Collections.Generic; using Massive; public class Test { public dynamic GetUser(string uName) { dynamic table = new sUser(); var objUser = table.FindBy(UserName: uName); //Tried following... //var objUser = new sUser().All().Where(u => u.UserName.ToString() == uName).FirstOrDefault(); //var objUser = new sUser().All().Where(u => u.UserName.ToString().Equals(uName)).FirstOrDefault(); return objUser; } public void GetSomething(dynamic testObj,string user) { dynamic User = GetUser(user); //testObj.CUser = User["FirstName"] + ' ' + User["LastName"]; //Would like to access User object like //User.FirstName or User["FirstName"] //And not like this... foreach (var item in User) { testObj.CUser = item.FirstName + ' ' + item.LastName; } } } 我想访问用户动态对象,如User.FirstName或User [“FirstName”]. 任何输入都非常感谢. 谢谢. 解决方法
您将不得不使用First方法而不是findby
他们你将能够访问这样的属性: testObj.CUser = User.FirstName + User.LastName; 完整的工作控制台应用 class Program { static void Main(string[] args) { dynamic testObj = new ExpandoObject(); test t = new test(); t.GetSomething(testObj,"TestUserName"); Console.WriteLine(testObj.CUser); Console.ReadLine(); } } public class test { // This is my model public class sUser : DynamicModel { public sUser() : base("test","UserId") { } } public void GetSomething(dynamic testObj,string user) { dynamic User = GetUser(user); testObj.CUser = User.FirstName + User.LastName; } public dynamic GetUser(string uName) { dynamic table = new sUser(); var objUser = table.First(UserName: uName); return objUser; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |