如何在ASP.NET MVC中搜索列表中的数据 [英] How to search the data inside the list in ASP.NET MVC
本文介绍了如何在ASP.NET MVC中搜索列表中的数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想搜索列表中的字符串。从下面的代码,我想按列名称 - Locale搜索LocalizedString列表中的列。检查下方突出显示的行(带下划线)。请帮我从LocalizedString列表中搜索Locale列。
我尝试过:
i want to search the string which inside the list. from the code below, i want to search the column by column name-Locale which inside the LocalizedString list. check the line below highlighted(Underlined). Please help me out to search the Locale column from the LocalizedString list.
What I have tried:
namespace Akton.Controllers
{
public class LocalizationStringDefaultController : Controller
{
private IUnitOfWork db = new UnitOfWork( );
public Akton.Areas.Challenge.DAL.UnitOfWorkRepo.IUnitOfWork challenge=new Akton.Areas.Challenge.DAL.UnitOfWorkRepo.UnitOfWork();
// GET: LocalizaionStringDefault
public ActionResult Index ( string sortOrder, string currentFilter, string searchString, int? page )
{
ViewBag.LocaleSortParam = string.IsNullOrEmpty(sortOrder) ? "locale_desc" : "";
List<localstringsviewmodel> localStrings = new List<localstringsviewmodel>( );
List<stringdefault> defaultString = challenge.StringDefaultRepository.Get( ).ToList( );
if ( defaultString.Count>0 && defaultString !=null )
{
foreach ( var item in defaultString )
{
List<localizedstring> stringModel = new List<localizedstring>( );
var languagestring = challenge.LocalizedStringRepository.Get().Where(s => s.StringDefaultId == item.StringDefaultId).ToList( );
if ( languagestring.Count > 0 && languagestring != null )
{
foreach ( var languages in languagestring )
{
stringModel.Add(new LocalizedString
{
StringDefaults=languages.StringDefaults,
Locale=languages.Locale,
Value=languages.Value
});
}
}
localStrings.Add(new LocalStringsViewModel
{
DefaultString=item.Value,
LocalizedString=stringModel,
StringDefaultId=item.StringDefaultId
});
}
}
var stringList = localStrings.Distinct( );
ViewBag.CurrentSort = sortOrder;
if ( searchString != null )
{
page = 1;
}
else
{
searchString = currentFilter;
}
ViewBag.CurrentFilter = searchString;
if ( !String.IsNullOrEmpty(searchString) )
{
stringList = stringList.Where(x=>x.Locale==searchString).Select(x=> x).ToList();
}
switch ( sortOrder )
{
case "locale_desc":
stringList = stringList.OrderByDescending(s => s.Locale);
break;
case "Value":
stringList = stringList.OrderBy(s => s.Value);
break;
default:
stringList = stringList.OrderBy(s => s.StringDefaultId);
break;
}
int pageSize = 12;
int pageNumber = ( page ?? 1 );
return View(stringList.ToPagedList(pageNumber, pageSize));
}
}
}</localizedstring></localizedstring></stringdefault></localstringsviewmodel></localstringsviewmodel>
推荐答案
排序,过滤,以及使用实体框架进行分页在ASP.NET MVC应用程序中ASP.NET站点 [ ^ ]
这篇关于如何在ASP.NET MVC中搜索列表中的数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文