如果我有一个List <Person>,其中person由类定义
class Person
{
string Forename
{
get;set;
}
string Surname
{
get; set;
}
}
Run Code Online (Sandbox Code Playgroud)
我将它绑定到一个asp转发器控件,看起来像这样:
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<asp:Label ID="lblForename" runat="server" Text="Forname" AssociatedControlID="txtForename" />
<asp:TextBox ID="txtForename" runat="server" Text='<%# ((Person)Container.DataItem).Forename %>' />
<br />
<asp:Label ID="lblSurname" runat="server" Text="Forname" AssociatedControlID="txtSurname" />
<asp:TextBox ID="txtSurname" runat="server" Text='<%# ((Person)Container.DataItem).Surname %>' />
<br />
</ItemTemplate>
</asp:Repeater>
Run Code Online (Sandbox Code Playgroud)
获取用户输入的数据到对象中的最佳方法是什么?
我认为数据绑定的重点在于有效地处理了这个问题,但是当我检查Repeater1.Items集合时,没有进行任何更改.我是否必须编写代码来执行某些操作
//This is only intended to be pseudo code
for each item in Repeater1.Items
((Person)item.DataItem).Forename = item.FindControl("txtForname").Text;
end for
Run Code Online (Sandbox Code Playgroud)
如果是这种情况,为什么DataItem属性总是为空?
附加信息:
我已经在调用代码的效果了
this.Repeater1.DataSource = this.PersonList; …Run Code Online (Sandbox Code Playgroud) 我正在编写一个asp.net用户控件.它有一个属性,FurtherReadingPage,以及绑定到它的两个控件:ObjectDataSource和Repeater.在Repeater里面我想显示一个href属性设置为类似的超链接FurtherReadingPage + "?id=" + Eval("Id").我不知道如何在页面标记内执行此操作.我可以使用<% Eval("Id") %>或<% Response.Write(FurtherReadingPage + "?id=") %>单独使用,但我不知道如何混合它们.
如何从OperationContracts我的WCF REST服务中返回泛型类型参数中的接口类型?更具体地说,它适用于一个操作,但是当我使用T作为接口的泛型添加第二个操作时,它不起作用.
我正在使用JSON作为请求和响应格式,为非WCF客户端提供解析所需数据的JSON响应.我没有使用SOAP,也没有使用服务生成的WSDL.
我的服务界面:
[ServiceContract]
[ServiceKnownType("GetServiceKnownTypes", typeof(ServiceKnownTypesHelper))]
public interface IMyService
{
[WebGet(UriTemplate="count")]
[OperationContract]
IServiceResult<int> GetCount();
[WebGet(UriTemplate="desc")]
[OperationContract]
IServiceResult<string> GetDescription();
[WebGet(UriTemplate="foo")]
[OperationContract]
IServiceResult<IFooData> GetFooData();
// Fails when I invoke either method if I uncomment this operation.
//[WebGet(UriTemplate="bar")]
//[OperationContract]
//IServiceResult<IBarData> GetBarData();
}
Run Code Online (Sandbox Code Playgroud)
我离开GetCount()并GetDescription()在示例中指出这两个通用结果工作正常,但显然它们是具体类型.甚至GetFooData()可以正常工作,直到我添加第二种方法,IServiceResult<T>即T接口.
返回类型GetFooData()和GetBarData()不同,也不是实现它们的具体类.
你可以想象我已经将实现简化为骨架,因为我不认为实现是问题的核心:
#region My service implementation
public class MyService : IMyService
{
public IServiceResult<int> GetCount()
{
return new ServiceResult<int>(42);
}
public …Run Code Online (Sandbox Code Playgroud) 我正在使用WebForms. HtmlTableCell没有CssClass财产.我可以做这个:
<td class="whatever"></td>
Run Code Online (Sandbox Code Playgroud)
但不是这个:
myTableCell.Class = "whatever";
Run Code Online (Sandbox Code Playgroud)
如何将CSS类应用于我的HtmlTableCell?