2016-10-07 9 views
-6

私は、なぜNotImplementedException()をしたのですか?私はこのメソッドを呼び出したことを確信していますが、まだ表示されますか?NotImplementedExceptionしかし、すでにC言語のメソッドを呼び出す

これは私のdsNBC.xsdデザイナでスロー例外です:

internal int getLastIDbyMaxPeg() 
{ 
    throw new System.NotImplementedException(); 
} 

、これは私がコントロールという名前のフォルダにPegawaiControl.csでメソッドを呼び出した方法です:

public int getNumID() 
{ 
    return Peg.getLastIDbyMaxPeg(); 
} 

public string generateIDPeg() 
{ 
    string id = "PEG"; 
    return id + Convert.ToString(getNumID() + 1); 
} 

とで私はちょうどこのようなローカル変数にgenerateIDPeg()と呼ばれる境界のレイアウト:string idPegw = PC.generateIDPeg();

まあ、getLastIDbyMaxPeg()は、クエリのメソッドの名前です私が作成したdsNBC.xsdのtaset。したがって、そのメソッドの実際の実装コードは、データセット内のクエリです。私はここでconsufedているどのように私はスロー例外の実際の実装としてクエリを実装することができますか? You can see the StackTrace here

私を助けることができますか?

+6

メソッドを呼び出すと、メソッドが実行していることだけが例外をスローしている場合、例外が発生します... '新しいSystem.NotImplementedException();'行を削除し、あなた自身のコードがそこにあります。 –

+0

'throw new System.NotImplementedException();'という行はプレースホルダテキストです。そのメソッドからintを返す必要があります。 – jetstream96

+1

例外のスタックトレースをあなたの質問に追加できますか? – stuartd

答えて

0

このコードを削除して、実際の実装に置き換える必要があります。
このメソッドは実装されていません(NotImplementedExceptionを投げるのではなく、実際にを実行します。)。

メソッドを呼び出すと自動的に削除されません。実装する必要があります。

置き、あなたの方法の内部ロジックとは、自分の状況を修正するために、現在の行を削除:あなたは、確かに、あなたの問題の源であるgetLastIDbyMaxPeg()メソッド、呼び出した

internal int getLastIDbyMaxPeg() 
{ 
    //Do some things 
    //return some int value 
} 
+0

ですが、getLastIDbyMaxPeg()は、データベースから最後の最大IDを見つけるためにDataSetに作成するメソッドの名前です。そのため、コードはクエリです。そのため、「Peg。"は、PegがtableAdapterの変数であるため、getLastIDbyMaxPeg()の前にあります。コード自体がデータセットのクエリである間に、内部int getLastIDbyMaxPegにコードを配置する方法は?@DangerZone – RedPlay

+0

これはまったく別の質問です。 C#でクエリを実行する方法を調べ、このメソッドでクエリを配置する必要があります。 –

0

この例外は、あなたが呼び出す前にgetLastIDbyMaxPeg()メソッドを実装していないことを意味します。現在、すべてのgetLastIDbyMaxPegはNotImplementedException()を投げます。 (例外は、実装する必要があるが未だ実現していないメソッドの標準的な "プレースホルダ"です)。

throw new NotImplementedException()を実際の実装に置き換えると、問題は解決されます。

関連する問題