1
これらのすべての条件に同じパターンがある場合は、この方法で重複を減らすための一般的な方法を思いつきますか?ここでは重複を減らすために簡略化しようとしています(共通パターン)
場合によってはすべてのバージョンが必要な場合もあり、特定のバージョンのみを必要とする場合もあります。
私はスイッチケースを試しました。
public override Func<JObject, dynamic, string> VersionMethod => (jobject, parameters) =>{
bool hasValidObject = false;
if (jobject["swVersion"] != null)
{
_livetv.SoftwareVersion = new VersionInfo(jobject["swVersion"].Value<string>());
hasValidObject = true;
}
if (jobject["hwVersion"] != null)
{
_livetv.HardwareVersion = new VersionInfo(jobject["hwVersion"].Value<string>());
hasValidObject = true;
}
if (jobject["ltvVersion"] != null)
{
_livetv.LTV2Version = new VersionInfo(jobject["ltvVersion"].Value<string>());
hasValidObject = true;
}
if (jobject["ltv3Version"] != null)
{
_livetv.LTV3Version = new VersionInfo(jobject["ltv3Version"].Value<string>());
hasValidObject = true;
}
if (jobject["cricVersion"] != null)
{
_livetv.KAVersion = new VersionInfo(jobject["cricVersion"].Value<string>());
hasValidObject = true;
}
if (jobject["bbVersion"] != null)
{
_livetv.BasebandVersion = new VersionInfo(jobject["bbVersion"].Value<string>());
hasValidObject = true;
}
if (hasValidObject)
{
return GenerateSuccessful();
}
return GenerateUnsuccessful(
"Unable to parse version from request, try again.");
};
それは、これをコードレビュースタック交換に投稿すると良いでしょう。そこの応答。 –