我想避免循环
我有这个 :
string s = "AAAA,12,BBBB,34,CCCCC,56";
Run Code Online (Sandbox Code Playgroud)
有了Linq,我想要2个List
在第一个:AAAA,BBBB和CCCCC
在第二个:12,34和56
它不是基于数字或非数字.
谢谢,
我有一个IList<AdminVAT>,我想把这个集合复制到IList<AdminVATDto>收藏
我试过这个:
IList<AdminVAT> listAdminVAT = new AdministrationService(session).ListDecimal<AdminVAT>();
AutoMapper.Mapper.CreateMap<IList<AdminVAT>, List<AdminVATDTO>>();
var res = AutoMapper.Mapper.Map<IList<AdminVAT>, IList<AdminVATDTO>>(listAdminVAT);
Run Code Online (Sandbox Code Playgroud)
我收到这个例外:
尝试将System.Collections.Generic.IList`1 [[AdminVAT,eSIT.GC.DataModel,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null]]映射到System.Collections.Generic.IList`1 [[AdminVATDTO] ,eSIT.GC.WebUI,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null]].
谢谢.
UPDATE1
public class AdminVAT : IAdminDecimal
{
public virtual int Id { get; set; }
public virtual int Code { get; set; }
public virtual decimal Value { get; set; }
}
public class AdminVATDTO : AdminVAT
{
[DisplayFormat(DataFormatString = "{0:n2}", ApplyFormatInEditMode = true)] …Run Code Online (Sandbox Code Playgroud) 看下面的代码.我想用USERNAME参数中收到的字段名替换field.此方法必须能够在多个字段上进行一些搜索.
谢谢,
public void Searching(string field, string stringToSearch)
{
var res =
from user in _dataContext.USERs where
user.USERNAME.Contains(stringToSearch)
select new
{
Id = user.ID,
Username = user.USERNAME
};
}
Run Code Online (Sandbox Code Playgroud) 不可能(除了使用不同的名称)有几个具有相同名称但实现不同接口的通用方法?
public IList<T> List<T>() where T : class, IMyInterface1
{
return mylist
}
public IList<T> List<T>() where T : class, IMyInterface2
{
return mylist
}
Run Code Online (Sandbox Code Playgroud)
谢谢,
我正在尝试使用(新的)Fluent NHibernate(尝试从XML映射文件切换到FNH).使用下面的代码,我生成了数据库,我正在尝试找到相同的解决方案但是使用FNH(我仍然喜欢使用hibernate.cfg.xml):
public void CreateDatabase()
{
NHibernate.Cfg.Configuration cfg = new NHibernate.Cfg.Configuration();
cfg.Configure();
SchemaMetadataUpdater.QuoteTableAndColumns(cfg);
NHibernate.Tool.hbm2ddl.SchemaExport schema = new NHibernate.Tool.hbm2ddl.SchemaExport(cfg);
schema.Create(false, true);
}
namespace MyTestApplication.Entities
{
public class Person
{
public virtual int Id { get; set; }
public virtual string FirstName { get; set; }
public virtual string LastName { get; set; }
}
}
namespace MyTestApplication.Data.Mapping
{
public class PersonMapping : ClassMap<Person>
{
public PersonMapping()
{
Id(x => x.Id);
Map(x => x.FirstName);
Map(x => x.LastName);
}
}
}
Run Code Online (Sandbox Code Playgroud)
解
最后,我用这个(感谢Marco): …
我有一个XML文件,我有一个节点,我读了所有ChildNodes.childNode的名称与我必须使用此childNode的值设置的变量匹配.
在循环中,我想设置:
C#代码:
protected string myvar1;
protected string myvar2;
Run Code Online (Sandbox Code Playgroud)
XML内容如下所示:
<parameters>
<myvar1>MyValue1</myvar1>
<myvar2>MyValue2</myvar2>
</parameters>
Run Code Online (Sandbox Code Playgroud)
C#设置变量:
foreach (var item in xmlParamInstallation.SelectNodes("parameters")[0].ChildNodes)
{
??????
}
Run Code Online (Sandbox Code Playgroud)
任何的想法 ?
谢谢,
更新1: 循环中的值"field"始终为null.
public class ParametersTest
{
public string myvar1 { get; set; }
public string myvar2 {get; set;}
}
var type = typeof(ParametersTest);
foreach (XmlNode item in xmlParamInstallation.SelectNodes("parameters")[0].ChildNodes)
{
var field = type.GetField(item.LocalName);
field.SetValue(field, item.InnerText);
}
Run Code Online (Sandbox Code Playgroud) 在具有区域的ASP.NET MVC 3应用程序中(请参阅下面的架构).根目录中的"Controllers"目录已被删除.
当我这样做:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
Run Code Online (Sandbox Code Playgroud)
我收到此错误: 找到了与名为"Home"的控制器匹配的多个类型.如果为此请求提供服务的路由('{controller}/{action}/{id}')未指定名称空间来搜索与请求匹配的控制器,则会发生这种情况.如果是这种情况,请通过调用带有'namespaces'参数的'MapRoute'方法的重载来注册此路由.对'Home'的请求找到了以下匹配的控制器:MyProject.Areas.Administration.Controllers.HomeController MyProject.Areas.BackEnd.Controllers.HomeController MyProject.Areas.FrontEnd.Controllers.HomeController
当我这样做:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional }, // Parameter defaults
new string[] { "MyProject.Areas.Administration.Controllers" }
);
Run Code Online (Sandbox Code Playgroud)
我得到了错误:
The view 'Index' or its master was not found or no view engine …Run Code Online (Sandbox Code Playgroud) 我有下面的代码.我想用"NewText"替换文本"Text1",这是有效的.但是当我将文本"Text1"放在一个不再适用于表格内"Text1"的表格中时.
我想在所有文件中进行替换.
using (WordprocessingDocument doc = WordprocessingDocument.Open(String.Format("c:\\temp\\filename.docx"), true))
{
var body = doc.MainDocumentPart.Document.Body;
foreach (var para in body.Elements<Paragraph>())
{
foreach (var run in para.Elements<Run>())
{
foreach (var text in run.Elements<Text>())
{
if (text.Text.Contains("##Text1##"))
text.Text = text.Text.Replace("##Text1##", "NewText");
}
}
}
}
Run Code Online (Sandbox Code Playgroud) 我想显示一个带有某个字段的表单(示例中有一个),提交它,保存并显示同一页面并重置所有字段.我提交时的问题,我进行"保存"操作,但是当我显示视图时,表单仍然填写.
该模型 :
public class TestingModel
{
public string FirstName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
控制器:
public class ChildController : Controller
{
public ActionResult Index()
{
TestingModel model = new TestingModel();
return View(model);
}
public ActionResult Save(TestingModel model)
{
Console.WriteLine(model.FirstName); //OK
//Save data to DB here ...
TestingModel testingModel = new TestingModel() { FirstName = string.Empty };
return View("Index", testingModel);
}
}
Run Code Online (Sandbox Code Playgroud)
风景 :
@using (Html.BeginForm("Save", "Child",FormMethod.Post))
{
@Html.TextBoxFor( m => m.FirstName)
<input type="submit" id="btSave" />
}
Run Code Online (Sandbox Code Playgroud)
当Id调试到视图时,在"Immediat窗口"中,Model.FirstName = …
c# ×6
asp.net-mvc ×2
linq ×2
.net ×1
automapper ×1
database ×1
generics ×1
jquery ×1
linq-to-sql ×1
list ×1
ms-word ×1
nhibernate ×1
openxml ×1
openxml-sdk ×1
reflection ×1
xml ×1