Проблема из конструктора класса Led. Конструктор пытается инициализировать поле по умолчанию i2cController controller;
. Конструктор также ищет конструктор i2cController по умолчанию без параметров, который не определен.
Если вам нужна ссылка, сделайте это следующим образом.
class i2cController
{
private:
int foo;
public:
explicit i2cController(int Foo)
foo(Foo)
{}
void write(int value);
};
class Led
{
Led(Led&) = delete;
Led& operator=(Led&) = delete;
private:
i2cController &controller;
int pin;
public:
Led(int pin, i2cController &Controller);
~Led() noexcept;
void turnOn();
};
Led::Led(int Pin, i2cController &Controller)
controller(Controller),
pin(Pin)
{}
Led::~Led() noexcept
{}
Если вам нужна копия
class Led
{
private:
i2cController controller;
int pin;
public:
Led(int pin,const i2cController &Controller);
void turnOn();
};
Led::Led(int Pin,const const i2cController &Controller)
controller(Controller),
pin(Pin)
{}
Запрос. Форма. Набор ключей будет пуст, если ни один из Ваших вводов HTML не будет иметь ИМЕНА. Легко забыть помещать их там после выполнения.NET некоторое время. Просто назовите их, и Вы будете хороши для движения.
Вы уверены, что Ваша HTML-форма корректна, и действительно, на самом деле, делает POST HTTP? Я предложил бы работать Fiddler2, и затем попытаться зарегистрировать на пути Ваш Login.aspx, тогда удаленный сайт HTML, и затем сравнить запросы, которые отправлены к серверу. Для меня ASP.NET всегда хорошо работал - если Запрос HTTP содержит допустимый POST, я могу добраться до значений с помощью Запроса. Форма...
Вы верная банка.
самый легкий способ видеть, как Вы могли бы сделать, это должно просмотреть к aspx странице, на которую Вы хотите отправить. Тогда сохраните источник той страницы как HTML. Измените действие формы на Вашей новой странице HTML для указания назад на aspx страницу, с которой Вы первоначально скопировали его.
Добавленная стоимость отмечает к Вашим полям формы и помещенный данные, которые Вы хотите там, затем открываете страницу и поражаете кнопку отправки.
Вы верная банка. Создайте страницу HTML с формой в нем, которая будет содержать необходимые компоненты от login.aspx страницы (т.е. имя пользователя, и т.д.), и удостоверяться, что у них есть те же идентификаторы. Для Вас действие удостоверьтесь, что это - сообщение.
Вам, возможно, придется сделать некоторый код на login.aspx странице в функции Page_Load для чтения формы (в Запросе. Объект формы), и вызывают соответствующие функции для входа пользователя в, но кроме которого, у Вас должен быть доступ к форме, и может сделать то, что Вы хотите с ним.
Это очень возможно. Я копировал 3 страницы, которые должны дать Вам подтверждение концепции:
.aspx страница:
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox TextMode="password" ID="TextBox2" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" />
</div>
</form>
код позади:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
For Each s As String In Request.Form.AllKeys
Response.Write(s & ": " & Request.Form(s) & "<br />")
Next
End Sub
Отдельная страница HTML:
<form action="http://localhost/MyTestApp/Default.aspx" method="post">
<input name="TextBox1" type="text" value="" id="TextBox1" />
<input name="TextBox2" type="password" id="TextBox2" />
<input type="submit" name="Button1" value="Button" id="Button1" />
</form>
... и это извергает значения формы как ожидалось. Если это не работает, поскольку предложенные другие, используйте инструмент анализа трафика (скрипач, эфирный), потому что что-то, вероятно, не идет, где Вы ожидаете.