建议将静态类作为另一种类型属性的值源

问题描述 投票:0回答:1

我有这门课:

public struct Escapes
{
    private readonly string Value;
    private Escapes(string value) => Value = value;
    public static implicit operator string(Escapes r) => r.Value;
    public override string ToString() => Value;

    public static readonly Escapes LineFeed = new Escapes("\n");
    public static readonly Escapes CarriageReturn = new Escapes(new Escapes("\r"));
    public static readonly Escapes Digit = new Escapes(@"\d");
    public static readonly Escapes NotADigit = new Escapes(@"\D");
    public static readonly Escapes WordChar = new Escapes(@"\w");
    //……………

    public static Escapes AsciiChar(byte asciiCode)
    {
        return new Escapes( @"\x" + Convert.ToString(asciiCode, 16).PadLeft(2, '0'));
    }

    public static Escapes Unicode(short uniCode)
    {
        return new Escapes(@"\u" + Convert.ToString(uniCode, 16).PadLeft(4, '0'));
    }
}

我也有这门课:

public class CharOrEscape
{
    public string Value;
    private CharOrEscape(string value) => Value = value;
    public static implicit operator CharOrEscape(Escapes s) => new CharOrEscape(s.ToString());
    public static implicit operator CharOrEscape(char c) => new CharOrEscape(c.ToString());
    public static implicit operator string(CharOrEscape s) => s.ToString();
    public override string ToString() => Value;
    public override bool Equals(object obj) => ((CharOrEscape)obj).Value == Value;
}

我想告诉intellisense,CharOrEscape类型的任何属性或参数都接受Escapes类型的值,以便自动完成列表提供Escapes类的成员。

我曾经使用过某些属性看过这样的代码,但是我丢失了这个项目,并且无法通过谷歌搜索找到它。

c# intellisense
1个回答
1
投票

如果我正确理解了请求,你可以用这样的东西评论CharOrEscape的属性

///<summary></summary>
///<typeparamref name="Escapes"/>
public string Value;
...

你可以在docs page上阅读更多内容

© www.soinside.com 2019 - 2024. All rights reserved.