所以,我有一个接受回调并执行它的操作。看起来有点像这样。我可以在问号区域(或其他地方)填写任何内容来记录进入 APICall Func 参数的参数的详细信息吗?
/// <summary>
/// Opens Authenticated session to servers using ClientSide SDK's, performs action, closes session
/// </summary>
/// <typeparam name="T">The object to be returned from the authenticated action</typeparam>
/// <param name="credentials">Container for username, password</param>
/// <param name="APICall">?????????????????</param>
///
/// ?????????????????????
/// ?????????????????????
/// ?????????????????????
///
/// <returns>T</returns>
private static T MakeAuthenticatedCall<T> (CredStorage Credentials, Func<string,T> APICALL)
{
AuthenticationManager.Login(Credentials);
T APIResult = APICall(AuthenticationManager.SessionID);
AuthenticationManager.LogOff();
return APIResult;
}
最佳答案
您可以定义自己的委托(delegate)来执行此操作,而不是使用内置的 Func<T,...>
委托(delegate)。
然后您不仅可以为其提供 XML 文档,还可以为参数提供更具描述性的名称。
例如:
/// <summary>Makes an API call.</summary>
/// <typeparam name="T">The type returned by the API call.</typeparam>
/// <param name="param">The parameter passed to the API call.</param>
/// <returns>The value returned by the API call.</returns>
public delegate T ApiCall<T>(string param);
那么你可以使用它来代替 Func<string,T>
在你的方法中:
private static T MakeAuthenticatedCall<T>(CredStorage Credentials, ApiCall<T> APICALL)
{
这可以说是一种更好的方法,尽管代价是必须花费额外的时间来定义特殊委托(delegate)。
关于c# - 是否可以为 Func<T1,T2,....> 参数的部分提供智能感知的 xml 注释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36065368/