2013-12-25 2 views
1

У меня есть частичный класс следующегонедоступен из-за его уровень защиты

public partial class ThisAddIn 
{ 
    static string MD5Hash { get; set; } 
    static string SHA1Hash { get; set; } 
} 

и два статических свойства. Когда я устанавливаю статическое свойство, я получил ошибку в статическом методе.

public static void ComputeSHA1Hash(object filePath) 
{ 
    using (var stream = new FileStream((string)filePath, FileMode.Open, FileAccess.Read)) 
    { 
     using (var sha1gen = new SHA1CryptoServiceProvider()) 
     { 
      sha1gen.ComputeHash(stream); 
      ThisAddIn.SHA1Hash = BitConverter.ToString(sha1gen.Hash).Replace("-", "").ToLower(); 
     } 
    } 
} 
+1

На каком языке? Какую ошибку вы получаете? – Oswald

+1

Объявить свойство SHA1Hash общедоступным. –

+0

Этот вопрос был дан ответ уже http://stackoverflow.com/questions/3668089/class-is-inaccessible-due-to-its-protection-level. [1]: http://stackoverflow.com/questions/3668089/class-is-inaccessible-due-to-its-protection-level – Nullbyte

ответ

6

Проблема не в ключевом слове partial. Скорее, у вас не было модификаторов доступа к свойствам вашего класса. Это означает, что они private по умолчанию. Чтобы решить эту проблему, просто добавьте public в свои объявления о собственности.

Смежные вопросы