Я не думаю, что это возможно, но если есть, то мне это нужно :)Override По умолчанию Конструктор частичного класса с другой частичным классом
У меня есть автоматически сгенерированный прокси-файл из командной строки wsdl.exe инструмента Visual Studio 2008.
Выход прокси-сервера является частичным классом. Я хочу переопределить созданный по умолчанию конструктор. Я бы предпочел не изменять код, поскольку он автогенерируется.
Я попытался сделать еще один частичный класс и переопределить конструктор по умолчанию, но это не сработает. Затем я попытался использовать переопределение и новые ключевые слова, но это не работает.
Я знаю, что я мог бы наследовать от частичного класса, но это означало бы, что мне придется изменить весь наш исходный код, чтобы указать на новый родительский класс. Я бы предпочел не делать этого.
Любые идеи, работа вокруг или хаки?
//Auto-generated class
namespace MyNamespace {
public partial class MyWebService : System.Web.Services.Protocols.SoapHttpClientProtocol {
public MyWebService() {
string myString = "auto-generated constructor";
//other code...
}
}
}
//Manually created class in order to override the default constructor
namespace MyNamespace {
public partial class MyWebService : System.Web.Services.Protocols.SoapHttpClientProtocol {
public override MyWebService() { //this doesn't work
string myString = "overridden constructor";
//other code...
}
}
}
+1 Простое и элегантное решение. – James 2011-06-13 23:25:30
Теперь это дилемма для голосования ... на самом деле не имеет ничего общего с вопросом OP, который не связан с L2S, поэтому у него не будет OnCreated, но вы остановили меня, постукивая головой о стол, так что я думаю. – Ryan 2011-07-15 18:44:42
@ Ryan: Рад помочь. Спасибо :-) – 2011-08-23 15:42:23