<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>.NET Framework</title><link>https://www.dotnetzone.gr:443/cs/forums/14/ShowForum.aspx</link><description>Θέματα για threading, remoting, reflection, exception handling, security, regex κλπ.</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Προσθήκη attribute μέσω κληρονομικότητας.</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/54037.aspx</link><pubDate>Mon, 28 Sep 2009 21:11:49 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:54037</guid><dc:creator>xabikos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/54037.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=54037</wfw:commentRss><description>&lt;br&gt;Δεν θέλω να κάνω κάτι με δικά μου attributes. Θέλω να χρησιμοποιήσω ακριβώς τα attributes που έγραψα και στο παράδειγμα. Επειδή υπάρχει ήδη μια ιεραρχία από κλάσεις θέλω αν γίνεται να μην ξαναγράφω τα ίδια πράγματα όσο αυτό είναι εφικτό. Δηλαδή στο NamedEntity θέλω να ελέγχω μόνο για το μέγεθος του Property και στο RequiredNamedEntity να ελέγχω και το μέγεθος αλλά και το ότι θα δοθεί κάποια τιμή. Τώρα βέβαια αφού το DataMember πρέπει να γραφτεί ξανά δεν υπάρχει άλλος τρόπος. Η εφαρμογή που δουλεύω είναι σε Silverlight και θέλω να χρησιμοποιήσω το DataForm Control γι αυτό και τα συγκεκριμένα attributes.&lt;br&gt;</description></item><item><title>Απ: Προσθήκη attribute μέσω κληρονομικότητας.</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/54036.aspx</link><pubDate>Mon, 28 Sep 2009 20:58:51 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:54036</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/54036.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=54036</wfw:commentRss><description>&lt;P&gt;Το θέμα είναι λίγο πιο περίπλοκο. Τα StringLengthAttribute και DataMemberAttribute ορίζονται από το ίδιο το .NET, δεν μπορούν να ξαναγραφούν. Αν βέβαια ο xabikos αναφέρεται σε αυτά.&lt;/P&gt;
&lt;P&gt;Αυτό που λένε και ο Markos και ο gtas έχει να κάνει με το Inherited attribute. Όταν φτιάχνεις ένα custom attribute ορίζεις πως θα χρησιμοποιηθεί μέσω του AttributeUsage. Μεταξύ των άλλων, ορίζεις και αν θα γίνεται inherit σε subclasses και overriden members ή όχι. Το default είναι true, που σημαίνει ότι ΟΛΑ τα custom attributes γίνονται inherit εκτός και αν ζητήσει το αντίθετο ο δημιουργός τους. Το DataMemberAttribute έχει το Inherit=False.&lt;/P&gt;
&lt;P&gt;Μάλλον θα πρέπει να μας εξηγήσει ο xabikos τί θέλει να κάνει για να βγει μία άκρη. Εφόσον τα StringLength, Required και&amp;nbsp;DataMember βρίσκονται στο DataAnnotations namespace υποθέτω ότι θέλει να κάνει κάτι σχετικό με ASP.NET Dynamic Data. Τί ακριβώς θέλεις να κάνεις?&lt;/P&gt;</description></item><item><title>Απ: Προσθήκη attribute μέσω κληρονομικότητας.</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/54035.aspx</link><pubDate>Mon, 28 Sep 2009 20:48:05 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:54035</guid><dc:creator>Τάσκος Γιώργος</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/54035.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=54035</wfw:commentRss><description>Το &lt;a href="http://msdn.microsoft.com/en-us/library/system.runtime.serialization.datamemberattribute%28VS.85%29.aspx"&gt;[DataMember]&lt;/a&gt; attribute δεν ειναι Inherited πρέπει να το ξαναγράψεις.&lt;br&gt;&lt;br&gt;Check και για τα άλλα.&lt;br&gt;</description></item><item><title>Απ: Προσθήκη attribute μέσω κληρονομικότητας.</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/54033.aspx</link><pubDate>Mon, 28 Sep 2009 20:38:54 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:54033</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/54033.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=54033</wfw:commentRss><description>Ρίξε μια ματιά στην ενότητα "Defining or Controlling Usage of Our Attribute" σ' &lt;A href="http://www.codeproject.com/KB/cs/attributes.aspx"&gt;αυτό&lt;/A&gt; το άρθρο. Φαντάζομαι ότι αναφέρεσαι σε custom attributes.</description></item><item><title>Προσθήκη attribute μέσω κληρονομικότητας.</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/54029.aspx</link><pubDate>Mon, 28 Sep 2009 20:09:04 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:54029</guid><dc:creator>xabikos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/54029.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=54029</wfw:commentRss><description>&lt;br&gt;Αντιμετωπίζω το εξής πρόβλημα. Θέλω να προσθέσω μέσω κληρονομικότητας ένα attribute σε ένα property ενός αντικειμένου που κληρονομεί από κάποιο base class το οποίο όμως έχεις ήδη κάποιο attribute στο base class. Αυτό που θέλω να πετύχω είναι να ισχύουν και τα δυο attributes χωρίς να πρέπει να γράψω ξανά αυτό του base class. Για να γίνω πιο συγκεκριμένος έστω ότι έχουμε την εξής κλάση που είναι η βασική&lt;br&gt;&lt;br&gt;&lt;pre&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;public&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;class&lt;/span&gt; NamedEntity  {

		[DataMember]
		[StringLength(250)]

		&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;public&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;virtual&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;string&lt;/span&gt; Description {
			get ;
			set ;
		}
}&lt;/span&gt;&lt;/pre&gt;και έχουμε και την εξής κλάση&lt;br&gt;&lt;br&gt;&lt;pre&gt;&lt;span style="color:Black;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;public&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;class&lt;/span&gt; RequiredNamedEntity : NamedEntity {
		
		[Required]
		&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;public&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;override&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;string&lt;/span&gt; Description {
			get {
				&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;return&lt;/span&gt; &lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;base&lt;/span&gt;.Description;
			}
			set {
				&lt;span style="color:Blue;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;base&lt;/span&gt;.Description &lt;span style="color:Red;background-color:Transparent;font-family:Courier New;font-size:11px;font-weight:normal;"&gt;=&lt;/span&gt; value;
			}
		}
	
}&lt;/span&gt;&lt;/pre&gt;Όταν γίνεται έτσι απλά δεν ισχύουν τα attributes του NamedEntity. Υπάρχει κάποιος τρόπος;&lt;br&gt;Έψαξα στο internet αλλά δεν μπόρεσα να καταλαβώ ακριβώς αν γίνεται αυτό που θέλω γι αυτό ρωτάω και εδώ.&lt;br&gt;</description></item></channel></rss>