|
I've a types class, which contains key and value properties and I need to send array of types objects to restful service. I tried the below url, but its not working. Please correct it. Thanks in advance.
http://localhost:8080/CRService/services/CRService/newRequest?User=abcd&types={"key":name, "value":xyz}&types={"key":assigned_to, "value":abcd}&types={"key":status, "value":COMPLETED}
|
|
|
|
|
var servers = new List {
new DatabaseSystem { ServerName = "ANTIVIRUS" },
new DatabaseSizes { ServerName = "ANTIVIRUS"},
new DiskBackup { ServerName = "ANTIVIRUS"},
new SqlServerEventLog { ServerName="ANTIVIRUS"},
new DiskSystem { ServerName="ANTIVIRUS"},
new DatabaseSystem { ServerName="SEJKG-S-DB01" },
new DatabaseSizes { ServerName = "SEJKG-S-DB01"},
new DiskBackup { ServerName = "SEJKG-S-DB01"},
new SqlServerEventLog { ServerName="SEJKG-S-DB01"},
new DiskSystem { ServerName="SEJKG-S-DB01"},
};
var builder = new ContainerBuilder();
builder.RegisterInstance(notifiers).As>();
builder.RegisterInstance(servers).As>();
builder.Register(c => new ServerChecker(c.Resolve>(), c.Resolve>()));
return builder.Build();
I have a problem with how I should register my "where server = new List {..} 'to the Container Builder. My List of iChecker passed as a parameter to a ServerChecker. So much have I been able to solve, but not the list itself but I must have outside. The usual list of servers is much greater.
|
|
|
|
|
You're most likely never going to get an answer about this here. It's unlikely, in the extreme, that anyone who has ever used that library will ever see your question here.
You're best bet would be to contact the people that wrote the library you're using.
|
|
|
|
|
I have searched forums, Google, etc. and the examples provided do not work.
This is for a project I am working on.
The issue is creating event handler for click event
all else works and displays the pictureBoxes correctly
Code Snippet.
PictureBox pic = new PictureBox();
pic.Height = 150;
pic.Width = 150;
pic.Image = Utility.getPhoto(intPicID);
// get System.Drawing.Image from Picture Table
pic.Location = new System.Drawing.Point(intLeft, intTop);
pic.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
strBoxName = "PictureBox" + Convert.ToString(intW);
pic.Name = strBoxName;
pic.AllowDrop = true;
pic.TabStop = false;
pic.BorderStyle = BorderStyle.None;
if (clsGlobals.gbBorderStyle)
{
pic.BorderStyle = BorderStyle.Fixed3D;
}
//pic.Click += new System.EventHandler(pic_Click);
// if the preceeding line is un-commented the message
// the name pic_Click does not exist in the current context
clsGlobals.gstrPictureBoxNames[intW - 1] = pic.Name;
intW++;
PicBoxList.Add(pic);
}
// end of if
}
// end while
foreach (PictureBox pic in PicBoxList)
{
this.Controls.Add(pic);
//pic.Click += new System.EventHandler(pic_Click);
}
directives
using System;
using System.Windows;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
using System.Threading;
using System.IO;
using System.Data.SqlClient;
using System.Web;
|
|
|
|
|
Member 8572197 wrote: pic.Click += new System.EventHandler(pic_Click);
So where is your method...
private void pic_Click(object sender, EventArgs e)
{
}
?
|
|
|
|
|
Dave,
thanks!
one more question
Is it it possible to put a string variable inside the ( ) I have up to 36 possible EventHandlers to create.
Pete
|
|
|
|
|
I'm not sure what you mean. If you could explain what you wish to achieve more thoroughly then I may be able to suggest how you can do it.
|
|
|
|
|
Dave,
I have a form that can have a differing number of pictureboxes dynamically created on it. The number can vary from 9 to 36. The statement pic.Click += new System.EventHandler(pic1_Click); will work in the loop for one event, I need to create event for somewhere between 9 and 36 events on the fly, based on what was selected. Everything else is handled in my loops except the event creation. I can use a giant switch/case, but I would like to use a variable of some sort to place where I have pic1_Click in the event handler statement, if that is possible.
I hope this explains the issue better.
Thanks,
Pete
|
|
|
|
|
No, that isn't possible - but it doesn't sound like a good way to me anyway. The += needs a EventHandler delegate instance as a parameter. This can be done by using either an existing instance, a new instance or just a method name with the correct signature.
Have you considered an alternative aproach - and using one event handler for all the picture boxes?
You can attach the event handler to all PictureBox es in a simple loop:
foreach (Control control in this.Controls)
if (control is PictureBox)
control.Click += PictureBoxClickHandler;
and your handling method would start like this:
private void PictureBoxClickHandler(object sender, EventArgs e)
{
PictureBox pictureBox = sender as PictureBox;
if (pictureBox != null)
{
}
}
You can now use any property (perhaps Name as you want to use strings, the Tag property is designed for this though) to identify the picture box in question and react as you wish. I usually prefer to subclass the control and add an Id property:
public class MyPictureBox : PictureBox
{
private int id;
public int Id
{
get { return id; }
set { id = value; }
}
}
foreach (Control control in this.Controls)
if (control is MyPictureBox)
control.Click += MyPictureBoxClickHandler;
private void MyPictureBoxClickHandler(object sender, EventArgs e)
{
MyPictureBox myPictureBox = sender as MyPictureBox;
if (myPictureBox != null)
{
switch (myPictureBox.Id)
{
case 1:
break;
case 2:
case 3:
break;
default:
break;
}
}
}
[Edit] You would obviously need to use MyPictureBox es instead of the built in PictureBox . After a build, it will show in your toolbox for drag and drop - or you can just change the code where they are created.
|
|
|
|
|
Dave,
Thanks, I will try your methodology, it looks pretty easy.
Pete
|
|
|
|
|
Hi,
I'm new in c# but have a bit of knowledge in c++ and vb.net. I have a small assignment here of writing a simple game in c#. The game consists of a single player who can move left or right. It also has the raindrops which appear in random position in the top quarter of the screen vertically.
The objective of the game is to move the player so that he dodges the raindrops. If raindrop touches the player then the game is over.
I understand c# code but my problem is on making the graphics/animation. How can I create the falling raindrops and the player moving horizontally across the screen?
Your help is highly appreciated.
|
|
|
|
|
Qobacha wrote: How can I create the falling raindrops and the player moving horizontally across the screen?
By updating his position on a keypress-event and drawing him somewhere else in the paint-handler of the form.
Check out the events of the form
Bastard Programmer from Hell
|
|
|
|
|
It appears that Form doesn't raise Key events, but it does raise Mouse events.
And forget about the Paint handler -- I created a Label with a person on it (Webdings typeface) and I set the Location while the user holds a mouse button down.
|
|
|
|
|
Can you please explain more.
|
|
|
|
|
Do you know how to draw a line in a form?
Bastard Programmer from Hell
|
|
|
|
|
Hi
I got you but do i do that?
|
|
|
|
|
By placing the players Location in a variable; paint your player there - I assume you know how to paint on a form?
Then, increase or decrease either x or y values depending on the buttons that you receive in the KeyDown event.
Bastard Programmer from Hell
|
|
|
|
|
Thanks for the info. I haven't used paint but I will read about it and see how far i'll go.
|
|
|
|
|
You could also use a PictureBox and move that around (vary it's location), but that uaully doesn't give the smoothests of animations.
The forms paint-event is described on MSDN[^], as well as the event[^] that's raised when the user presses a key.
Bastard Programmer from Hell
|
|
|
|
|
Hi,
I read about paint and managed to create the moving objects representing raindrops. But the problem i have now is of making these raindrops falls forever as long as they they don't come in contact with the player.
Right now they fall vertically from one end the screen and disappear on the other end. How could I create that makes them keep falling?
Thanks
|
|
|
|
|
Check if they exceeded the boundaries of your form, and reset them, possibly to a semi-random[^] location (varying horizontal starting point, vertical always from top of form).
Have you worked on catching user-input too? Simplest way would be by toggeling the KeyPreview[^]-property of the form, and handle the event that comes with it.
Can we expect an article on "writing your own game" when you're done?
Bastard Programmer from Hell
|
|
|
|
|
Hi, Y
You'll definitely get an article from this. Like you said i now stuck on catching the user input. Whats the best way to do this?
|
|
|
|
|
Qobacha wrote: You'll definitely get an article from this.
Cool, that'll help others who are investigating the topic
Qobacha wrote: Like you said i now stuck on catching the user input. Whats the best way to do this?
Toggle the KeyPreview[^] property, and handle the OnPreviewKeyDown[^] event.
Bastard Programmer from Hell
|
|
|
|
|
Hi,
Below is the code from the class that i was testing the movement of my balls with. I think the problem is on the "Move" method. In this example I made the ball to move in the opposite direction whenever it touches the top or bottom walls. But what I really want to do is for the ball start moving from the top again once it had reached the bottom. Any suggestion on the corrections I could make?
class Ball
{
public float x, y, xvel, yvel, radius;
public Brush brush;
public Ball(int gamewidth,int gameHeight,Random r)
{
x = r.Next(gamewidth);
y = r.Next(gameHeight);
xvel = r.Next(2) + 2;
yvel = r.Next(2) + 2;
radius = r.Next(10) + 5;
brush = new SolidBrush(Color.Blue);
}
public void Move(int gameHeight)
{
if (y - radius < 0 || y + radius > gameHeight)
{
yvel = -yvel;
}
y += yvel;
}
public void Draw(Graphics g)
{
g.FillEllipse(brush, new RectangleF(x - radius, y - radius, radius * 2, radius * 2));
}
}
|
|
|
|
|
Qobacha wrote:
if(y - radius < 0 || y + radius > gameHeight)
{
yvel = -yvel;
}
This is where it inverts the direction. Check if y is larger than the screens' height, and if so, set it to 0
Bastard Programmer from Hell
|
|
|
|