<?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>Απ: Assembly version tolerance?</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/13765.aspx</link><pubDate>Wed, 07 Jun 2006 20:52:49 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:13765</guid><dc:creator>Mitsaras</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/13765.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=13765</wfw:commentRss><description>Λοιπόν, βρήκα το πρόβλημα (ή πιο σωστά, το βρήκε κάποιος άλλος για μένα): http://lab.msdn.microsoft.com/ProductFeedback/viewFeedback.aspx?feedbackid=b08b64df-49f2-44a3-ac10-7811281eb149&lt;br /&gt;
&lt;br /&gt;
Φαίνεται πως υπάρχει κάποιο πρόβλημα με το VTS και τη χρήση Generic types. Μια λύση η οποία φαίνεται να δουλεύει μέχρι να βγει το κατάλληλο SP, είναι να απαλείψω εντελώς το AssemblyVersion attribute από το referenced component!</description></item><item><title>Απ: Assembly version tolerance?</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/13725.aspx</link><pubDate>Wed, 07 Jun 2006 07:57:30 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:13725</guid><dc:creator>Mitsaras</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/13725.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=13725</wfw:commentRss><description>Kelman, σ' ευχαριστώ για την απάντηση, αλλά το πρόβλημα εμφανίζεται στο deserialization μόνο. Κατά τ' άλλα, το πρόγραμμα λειτουργεί κανονικά, και τα updates ανανεώνουν όλα τα .dlls.&lt;br /&gt;
&lt;br /&gt;
Πιο συγκεκριμένα, αν κάνω serialize ένα αντικείμενο σε assembly έκδοσης 1.0.0.1 και το στείλω μέσω Sockets σε ένα άλλο application που έχει το assembly έκδοσης 1.0.0.0, θα χτυπήσει με... FileNotFoundException όταν πάει για το Serialize (το assembly αυτό χρησιμοποιείται και σε πολλούς άλλους τομείς των προγραμμάτων και των Services χωρίς πρόβλημα).&lt;br /&gt;
&lt;br /&gt;
Εγώ θέλω να συγκρίνει τους τύπους που γίνονται deserialized, και το αν αυτοί εκφράζονται σωστά από την τρέχουσα έκδοση. Το FormatterAssemblyStyle λύνει αυτό το πρόβλημα (γιατί δεν έχω χρόνο και διάθεση να ασχοληθώ με το ISerialize);&lt;br /&gt;
&lt;br /&gt;
Αν δε βρω κάποια άκρη, θα χρησιμοποιήσω τη συμβουλή σου Kelman.</description></item><item><title>Απ: Assembly version tolerance?</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/13724.aspx</link><pubDate>Wed, 07 Jun 2006 07:03:32 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:13724</guid><dc:creator>KelMan</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/13724.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=13724</wfw:commentRss><description>Εφ'όσον έιναι signed το assembly, το manifest περιέχει ένα hash του binary αρχείου (όπερ σημαίνει ότι ακόμα και μια μικρή αλλαγή να κάνεις - πχ με ένα hex editor σε ένα string - έχεις κάνει break το compatibility). Άρα, ακόμα και όταν δεν αλλάζεις το version number, οι εφαρμογές που χρησιμοποιούν το reference αντιλαμβάνονται ότι δεν πρόκειται για το ίδιο με το οποίο έγιναν compile και για λόγους security το απορρίπτουν. &lt;br /&gt;
&lt;br /&gt;
Δοκίμασε μέσω του App.Config να κάνεις bind σε παλαιότερη version του assembly μέσω του BindingRedirect.</description></item><item><title>Απ: Assembly version tolerance?</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/13723.aspx</link><pubDate>Wed, 07 Jun 2006 05:08:34 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:13723</guid><dc:creator>Mitsaras</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/13723.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=13723</wfw:commentRss><description>Το σκέφτηκα, αλλά δεν είναι τόσο ευέλικτη η λύση για τη δουλειά μου (είναι και αρκετά τα μηχανήματα).&lt;br&gt;
&lt;br&gt;
Έχω έναν autoupdater ο οποίος μέσα σε 4 ώρες (το πολύ) θα ανανεώσει τα applications &amp;amp; τα services, αλλά δε θέλω να χτυπάει μέχρι να γίνει το update.&lt;br&gt;
&lt;br&gt;
Το VTSerialization δε θα έπρεπε να με σώσει σ' αυτήν την περίπτωση (δεν είναι αυτόματο άλλωστε); Αύριο πάντως που θα πάω στη δουλειά, θα ρίξω μια ματιά στο &lt;font size="-1"&gt;FormatterAssemblyStyle.&lt;b&gt;Simple&lt;/b&gt;, μη τυχόν και είναι αυτό που ψάχνω.&lt;b&gt;&lt;br&gt;&lt;/b&gt;&lt;/font&gt;</description></item><item><title>Απ: Assembly version tolerance?</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/13713.aspx</link><pubDate>Wed, 07 Jun 2006 02:45:20 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:13713</guid><dc:creator>anjelinio</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/13713.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=13713</wfw:commentRss><description>Ίσως αν το βάλεις στο GAC, και το reference ΔΕΝ είναι copy local στα επιμέρους projects?</description></item><item><title>Assembly version tolerance?</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/13708.aspx</link><pubDate>Wed, 07 Jun 2006 00:42:31 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:13708</guid><dc:creator>Mitsaras</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/13708.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=13708</wfw:commentRss><description>Βρίσκομαι αντιμέτωπος με ένα ενδιαφέρον πρόβλημα.&lt;br&gt;&lt;br&gt;Έχω ένα σύνολο από windows Application &amp;amp; windows Service solutions, τα οποία μοιράζονται μεταξύ άλλων, και ένα project (class library). Όλα τα παραγόμενα assemblies είναι signed, και καθορίζω ο ίδιος το versioning (δηλ. δεν είναι αυτόματο).&lt;br&gt;&lt;br&gt;Το πρόβλημα είναι πως, όταν κάνω κάποια αλλαγή στο κοινό αυτό project, η αλλαγή πρέπει να γίνει και στα υπόλοιπα solutions, αλλιώς λαμβάνω μηνύματα λάθους, για αδυναμία εύρεσης της συγκεκριμένης έκδοσης του DLL. Οι εφαρμογές επικοινωνούνε μεταξύ τους με τη χρήση Sockets, όπου ακολουθείται το τυπικό "Binary Serialize -&amp;gt; Transport -&amp;gt; Deserialize).&lt;br&gt;Ωστόσο, οι αλλαγές οι οποίες γίνονται, δεν επηρρεάζουν τον ήδη υπάρχοντα κώδικα (πχ μπορεί να ζητήσω ένα αντικείμενο από τη μία εφαρμογή με έκδοση του common project 1.0.5.0, το οποίο δεν έχει αλλάξει στην έκδοση 1.0.5.1 του common project, που χρησιμοποιεί η άλλη εφαρμογή-αποστολέας).&lt;br&gt;&lt;br&gt;Δουλεύω σε .net 2.0. Έχω δοκιμάσει να διατηρήσω ίδιο το νούμερο των εκδόσεων μεταξύ builds, χωρίς αποτέλεσμα. Αφαίρεσα το common project από 2 solutions και έβαλα reference αυτού ως DLL, με specific version στο false, αλλά δεν άλλαξε τίποτα. Αφαίρεσα μέχρι και το signing, επίσης χωρίς αποτέλεσμα.&lt;br&gt;&lt;br&gt;&lt;br&gt;Κάποια ιδέα για το αν αυτό είναι by design, ή κάνω κάτι λάθος; Ευχαριστώ προκαταβολικά!&lt;br&gt;</description></item></channel></rss>