User Tools

Site Tools


attached_methods

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
attached_methods [2018/01/28 17:37] wolfgangriedmannattached_methods [2018/01/28 17:41] (current) wolfgangriedmann
Line 1: Line 1:
-====== Attached methods ======+====== Extension methods ======
  
 In Visual Objects, you could define methods to classes where you had no sources and that are defined in other libraries. In Visual Objects, you could define methods to classes where you had no sources and that are defined in other libraries.
-In the .NET Framework this is not possible, but since this is a very powerful language feature, you can use the ''Attached methods'' to attach methods to another class where you have no sources. This works even with system classes and base datatypes ([[everything_object|Everything is an object]]).+In the .NET Framework this is not possible, but since this is a very powerful language feature, you can use the ''Extension methods'' to attach methods to another class where you have no sources. This works even with system classes and base datatypes ([[everything_object|Everything is an object]]).
  
 Please look at this code: Please look at this code:
Line 25: Line 25:
   
 return cReturn</code> return cReturn</code>
-The secret stays in the first parameter: 'self cString as string''+The secret stays in the first parameter: ''self cString as string''
  
-If you have defined this attached method in an assembly with a different namespace, this namespace of course must be included by a ''using'' statement.+If you have defined this extension method in an assembly with a different namespace, this namespace of course must be included by a ''using'' statement.
  
 And if you look at the sample code, you will see that the length of the string is checked before the ''SubString()'' method is called to be sure no exception is created if the string is shorter than indicated in the parameter. For more details see the [[exceptions|Exceptions]] topic. And if you look at the sample code, you will see that the length of the string is checked before the ''SubString()'' method is called to be sure no exception is created if the string is shorter than indicated in the parameter. For more details see the [[exceptions|Exceptions]] topic.
attached_methods.txt · Last modified: 2018/01/28 17:41 by wolfgangriedmann