編譯器警告 (層級 1) CS1690
更新:2007 年 11 月
錯誤訊息
存取 'member' 上的成員會造成執行階段例外狀況,因為它是 marshal-by-reference 類別的欄位
當您嘗試在衍生自 MarshalByRefObject 的類別成員上呼叫方法、屬性或索引子 (Indexer),而此成員為實值型別 (Value Type) 時,便會發生這個警告。若要解決這個警告狀況,請將此成員複製到區域變數中,並在該變數上呼叫方法。
下列範例會產生 CS1690:
// CS1690.cs
using System;
class WarningCS1690: MarshalByRefObject
{
int i = 5;
public static void Main()
{
WarningCS1690 e = new WarningCS1690();
e.i.ToString(); // CS1690
// OK
int i = e.i;
i.ToString();
e.i = i;
}
}