他のプロジェクトにサービスを提供するプロジェクトが1つあり、このサービスを提供するメソッドの戻り値はStringです。そのプロジェクト内で、いくつかの名前付き定数を使用して、予期されるエラーまたは回復可能なエラーの代わりに返される特別な帯域外値を表します。それ以外の場合、サービスはXML文字列を返します。
次のようなもの:
' modService.bas
const SERVICE_BADARG as String = "Unsupported argument."
const SERVICE_TOOMANY as String = "Too many Foos."
' cServiceProvider.cls
Private Function GetXMLString() as String
' generate and return XML string holding all sorts of generic stuff
End Function
Public Function PerformService(argument as String) as String
' do some stuff
If (some_condition = true) Then
PerformService = SERVICE_BADARG
Else If (some_other_condition = true) Then
PerformService = SERVICE_TOOMANY
Else
PerformService = GetXMLString()
他のプロジェクトから、これらの定数を冗長に定義することなく取得できるようにしたいと思います。可能であれば、それらをクラスに配置すること(不必要に複製される場所)を避け、それぞれにプロパティを作成することも避けたいと思います。
それらはすべて定数であり、変更されることはありません。