C# 没有列表类型的DropDownListFor

C# 没有列表类型的DropDownListFor,c#,.net,api,model-view-controller,salesforce,C#,.net,Api,Model View Controller,Salesforce,我目前正在使用Salesforce API,基本上是从Salesforce中提取数据并将其推回 在这一部分中,我需要提取数据并对其进行反序列化,以便对其进行模型访问 模型中的这个属性,称为Subject,不是list类型,因为没有多个,但是有来自不同对象的多个Subject进入,这就是我想放在下拉列表中的内容 我该怎么办 我的服务中的GetAllEvents()方法 public async Task<SFEventModel> GetAllEvents()

我目前正在使用Salesforce API,基本上是从Salesforce中提取数据并将其推回

在这一部分中,我需要提取数据并对其进行反序列化,以便对其进行模型访问

模型中的这个属性,称为Subject,不是list类型,因为没有多个,但是有来自不同对象的多个Subject进入,这就是我想放在下拉列表中的内容

我该怎么办

我的服务中的GetAllEvents()方法

        public async Task<SFEventModel> GetAllEvents()
        {
            HttpClient queryClient = new HttpClient();
            var tm = await GetToken();
            List<SelectListItem> events = new List<SelectListItem>();

            string restQuery = tm.ServiceUrl + "/services/data/v25.0/query?q=SELECT+Subject+from+Event";

            HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, restQuery);


            // Adding the token to the header 
            request.Headers.Add("Authorization", "Bearer " + tm.AccessToken);
            // Return JSON to the caller
            request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

            //Call Endpoint Async
            HttpResponseMessage response = await queryClient.SendAsync(request);

            string responseString = await response.Content.ReadAsStringAsync();
            var model = JsonConvert.DeserializeObject<SFEventModel>(responseString);

            return model;
        }
模型中的PicklistValue分部类-->

方法从API调用中提取这些值

var allEvents = await _api.GetAllEvents();
var subjectList = allEvents.Fields.Where(x => x.Name == "Subject").Select(x => x.PicklistValues).FirstOrDefault();

编辑:已解决

可能只是把问题的措辞弄错了,但我做到了

我的HomeController中的索引操作必须具有此方法->

ViewData[“Picklist1”]=新建SelectLit(等待GetSubject(),“值”,“标签”)

我的观点是这样的

出于好奇,我的GetSubject方法是根据SalesforceAPI糟糕的事实定制的

private async Task<List<PicklistValue>> GetSubject()
 {
    var allEvents = await _api.GetAllEvents();
    var subjectList = allEvents.Fields.Where(x => x.Name == "Subject").Select(x => 
           x.PicklistValues).FirstOrDefault().ToList();

    return subjectList;
 }
private异步任务GetSubject()
{
var allEvents=await_api.GetAllEvents();
var subjectList=allEvents.Fields.Where(x=>x.Name==“Subject”)。选择(x=>
x、 PicklistValues.FirstOrDefault().ToList();
返回主题列表;
}

编辑:已解决

可能只是把问题的措辞弄错了,但我做到了

我的HomeController中的索引操作必须具有此方法->

ViewData[“Picklist1”]=新建SelectLit(等待GetSubject(),“值”,“标签”)

我的观点是这样的

出于好奇,我的GetSubject方法是根据SalesforceAPI糟糕的事实定制的

private async Task<List<PicklistValue>> GetSubject()
 {
    var allEvents = await _api.GetAllEvents();
    var subjectList = allEvents.Fields.Where(x => x.Name == "Subject").Select(x => 
           x.PicklistValues).FirstOrDefault().ToList();

    return subjectList;
 }
private异步任务GetSubject()
{
var allEvents=await_api.GetAllEvents();
var subjectList=allEvents.Fields.Where(x=>x.Name==“Subject”)。选择(x=>
x、 PicklistValues.FirstOrDefault().ToList();
返回主题列表;
}

有哪些主题?你从哪里获得它们?有很多主题,比如“电话”、“电子邮件”、“文本”等等,这些主题都来自Salesforce精选列表值,但我想把它们带到我的网站中,基本上与它们一起下拉。你能发布你的模型吗?更新后的帖子,应该在那里看到。那里有什么主题,你从哪里得到它们?有很多,像“呼叫”、“电子邮件”、“文本”,诸如此类,它们来自Salesforce挑选列表值,但我想把它们带到我的网站,基本上与它们一起下拉。你可以发布你的模型吗?更新后的帖子,应该在那里看到。
var allEvents = await _api.GetAllEvents();
var subjectList = allEvents.Fields.Where(x => x.Name == "Subject").Select(x => x.PicklistValues).FirstOrDefault();
private async Task<List<PicklistValue>> GetSubject()
 {
    var allEvents = await _api.GetAllEvents();
    var subjectList = allEvents.Fields.Where(x => x.Name == "Subject").Select(x => 
           x.PicklistValues).FirstOrDefault().ToList();

    return subjectList;
 }