相关疑难解决方法(0)

是否可以访问自动实现属性背后的支持字段?

我知道我可以使用详细的属性语法:

private string _postalCode;

public string PostalCode
{
    get { return _postalCode; }
    set { _postalCode = value; }
}
Run Code Online (Sandbox Code Playgroud)

或者我可以使用自动实现的属性.

public string PostalCode { get; set; }
Run Code Online (Sandbox Code Playgroud)

我可以以某种方式访问​​自动实现属性后面的支持字段吗?(在这个例子中,它将是_ postalCode).


编辑:我的问题不是关于设计,而是关于,比方说,理论能力.

c#

55
推荐指数
5
解决办法
2万
查看次数

F# 将构造函数添加到记录?

基本上我想有一个单一的构造来处理序列化到 JSON 和格式化的 xml。Records 可以很好地序列化到 json 或从 json 序列化。但是 XmlSerializer 需要一个无参数的构造函数。我真的不想经历为这些构造构建类对象的练习(仅限原则)。我希望可以有一些快捷方式将无参数构造函数放到记录上(也许使用 wioth 语句或其他东西)。我无法让它表现 - 社区中有人有运气吗?

module JSONExample
    open System
    open System.IO 
    open System.Net 
    open System.Text 
    open System.Web 
    open System.Xml
    open System.Security.Authentication 
    open System.Runtime.Serialization //add assemnbly reference System.Runtime.Serialization System.Xml
    open System.Xml.Serialization
    open System.Collections.Generic 

    [<DataContract>]            
    type ChemicalElementRecord = { 
        [<XmlAttribute("name")>]
        [<field: DataMember(Name="name") >] 
        Name:string 

        [<XmlAttribute("name")>]
        [<field: DataMember(Name="boiling_point") >] 
        BoilingPoint:string 

        [<XmlAttribute("atomic-mass")>]
        [<field: DataMember(Name="atomic_mass") >] 
        AtomicMass:string 
    } 

    [<XmlRoot("freebase")>]
    [<DataContract>] 
    type FreebaseResultRecord = { 
        [<XmlAttribute("code")>]
        [<field: DataMember(Name="code") >] 
        Code:string 

        [<XmlArrayAttribute("results")>]
        [<XmlArrayItem(typeof<ChemicalElementRecord>, ElementName = "chemical-element")>]
        [<field: …
Run Code Online (Sandbox Code Playgroud)

.net f# datacontractserializer xmlserializer

3
推荐指数
1
解决办法
1823
查看次数

标签 统计

.net ×1

c# ×1

datacontractserializer ×1

f# ×1

xmlserializer ×1