title: Legible or not: C# multiple ternary operators + Throw if unmatched
body: <p>Do you find the following C# code legible?</p>
  
  <pre><code>private bool CanExecuteAdd(string parameter) {
      return
          this.Script == null ? false
          : parameter == "Step" ? true
          : parameter == "Element" ? this.ElementSelectedInLibrary != null &amp;&amp; this.SelectedStep != null
          : parameter == "Choice" ? this.SelectedElement != null
          : parameter == "Jump" ? this.SelectedStep != null
          : parameter == "Conditional jump" ? false
          : false.Throw("Unknown Add parameter {0} in XAML.".F(parameter));
  }
  </code></pre>
  
  <p>where Throw is defined as:</p>
  
  <pre><code>public static T Throw&lt;T&gt;(this T ignored, string message) {
      throw new Exception(message);
  }
  </code></pre>
  
  <p>I know that's not idiomatic C#. However, would you be able at understand it at first or second glance? Or did I stray too far?</p>