IDE :: Refactoring Data Contracts?
Dec 20, 2010I want to add DataMember attributes for the properties in a class Is there any way to automatically add the attribute maybe some refactoring tool
View 4 RepliesI want to add DataMember attributes for the properties in a class Is there any way to automatically add the attribute maybe some refactoring tool
View 4 RepliesWe have lots of WCF services that are only used by our own code; the code that uses them is mostly in the same solutions files that contains the services.
However they do not use a shared assembly for the contracts, so each time a data contract is change the reference to the service has to be updated by hand in all projects that use the service. (Then the code needs to be fixed up by hand)
So how do I do a simple refactoring like renamed a data item in a data contract?
Is there a way to update all references to services in a single solution with one command, rather then having to click on each reference in each project?
I am using Oracle 11g client, with ODP.NET. I am trying to add conditional Transaction handling.
Dim ds As New DataSet()
Dim txn As OracleTransaction
Dim _beginTransaction as Bolean = true
Using conn As New OracleConnection(ConnString)
[Code]...
How do I fix txn being nothing / null? The error is: Variable 'txn' is used before it has been assigned a value. A null reference exception could result at runtime. Edit: to RichardOD for pointing out that you can not explicitly declare that a transaction cannot be opend up on stored procedures via ODP.NET. I have verified that this is an issue. BUT We still haven't figured out why the error is occuring. I understand that txn is initially given a value w/in an if statement, but being defined outside of the try/catch block should make that irrelevant.... right? Or is that bad coding?
Dont understand where to start on visual basic iv been leaning alot about computers over the months and i would now like to design a program and to be honest its all new and i dont no where to start or what any of these woulds mean like string, data enadled application and refactoring.
View 3 RepliesI have a class with a static list of keys, and I have a static method called Remove() that removes a key from that list.Now what I understand from the contracts post conditions is that as the programmer of the class, I guarantee that the current public method does something specific, in this case : removing the element of the list.
Here's what I've written:
private static List<Keys> m_usedKeys; // private list of keys
public static void Remove(Keys _key)
{
[code]....
What I'm trying to "Ensure" here, is that the Remove() method removes the key for real from the list (Yes this might be a trivial example, but I get the error there.)when I write the Contract.Ensures() line, VS2010 gives me the following error :
Error 3 Detected expression statement evaluated for potential side-effect in contracts of method 'LibJungleTimer.KeyBind.Remove(System.Windows.Forms.Keys)'. (Did you mean to put the expression into a Requires, Ensures, or Invariant call?) C:UsersJoelDocumentsProgrammationJTJungleTimerLibJungleTimerKeyBind.cs 51
I think this error says that the expression m_usedKeys.remove(_key); has a potential side-effect. In fact, it has a side-effect, it removes a key from the list!If I try to write something like this instead :
Contract.Assert(!m_usedKeys.Any(x => x == _key));
well it compiles fine.
I use VS 2005 and VB.NET. I have a class A. This class A is an empty class(no functions, no members). I wrote the following code: Dim _a as new A(); Dim code as String = _a.GetCode() In the same situation, the C# refactoring tool in VS 2005 IDE propose me to create a method in the A class internal string GetCode(){ }
The VB.NET compiles does not propose anything. There is a way to implement the functions when I need it in code, or I need to planify all my methods before using the class?
I am currently learning vb.net for my new job and I have mixed feelings over public fields. I see many arguments about them hurting the encapsulation. In python, the common practice is to keep things simple and use fields when they are enough. If we want to add logic later, we just refactor them into a property without breaking anything for the client code.In the codebase I am working with I see huge classes containing dozen of properties like:
[Code]...
I recently started a project and needed to do some integration with LDAP via DirectoryServices. I've done this in other apps so I went into one of them to see how I did it -- why reinvent the wheel right? Well, while this wheel works, it was developed years ago and kinda smells (it's wooden, firmly attached to the previous vehicle, hard to repair and produces a potentially bumpy ride).So I thought to myself, this is the perfect time to refactor this puppy and make it more portable, reusable, reliable, easier to configure etc. Now that's fine and dandy, but then I started feeling a tad overwhelmed regarding to where to start. Should it be a separate library? How should it be configured? Should it use IoC? DI?
So my [admittedly subjective] question is this -- given a relatively small, but quite useful class like the one below, what is a good approach to refactoring it? What questions do you ask and how do you decide what to implement or not implement? Where do you draw the line regarding configuration flexibility? [Note: Please don't bash this code too much okay? It was written a long time ago and has functioned perfectly well baked into an in house application.]
Public Shared Function AuthenticateUser(ByVal id As String, ByVal password As String) As Boolean
Dim path As String = GetUserPath(id)
[code]......
This is my scenario. I am writing an app which takes a person object and a features object , when the user selects a person object a features object is created. This works for any amount of features i care to display. So far so good, i am now refactoring to create 2 additional classes, a maths class and a ui class. my issue now is how do i get the maths functions to know the instance of the features object(s) or person object(s)?
Unfactored
Public Sub New(ByVal feature1 As New Feature)
...
[code].....
When I try to change the root namespace of my WPF VB.Net application, I get this error:
'The file "" does not support refactoring and will have to be manually changed. Object reference not set to an instance of an object'
[Code]...
I have a class that I wrote fairly early on in my vb.net programming experience which inherited from another class it really should have composed. The base class is a relatively generic nested dictionary-based collection; let's call the descendant class a "Car".Right now there's a lot of code that does things like 'MyCar!Color.st = "Red"' (I use the generic collection rather than real properties to facilitate data interchange with code written in VB6, and also to facilitate comparisons of cars; given three cars X, Y, Z, I can e.g. detect any changes between X and Y and apply those changes to Z).
Is there any nice way to refactor the code to use composition rather than inheritance?Which properties methods should the "Car" object wrap, and which ones should be accessed through a data-object property? Should a widening conversion be defined between a car and the collection object? Are there any gotchas when doing such refactoring?
These routines (vb.net) allow you to dump a gridview to CSV, even if there are templated controls in the cells. It works, but I'm not thrilled with it.
What improvements should I make and why?
Private Shared Function CsvFormatted(ByVal t As String) As String
If t.Contains(",") Then
t = """" + t + """"
[Code].....
Have we moved from "Being forced to go install a 3rd party add in to get what C# users have" to "Being forced to go buy a 3rd party add in to get what C# users have"?
Why did MS see fit to get DevExpress to create Refactor! for the previous versions of VS, but not for 2010? Or am I missing something?
I've been working to refactor my code and ended up with a quite clean main BLL class that has only a few manager classes that pass information between eachother. They handle separate tasks/areas like socket connection, data, etc. It's only one instance of each of these manager objects, so I believe maybe the base layout is a structural singleton (?) ..but not sure. This seems to give quite good oversight and a clean separation of PL/BLL as the main form only access the BLL through one instance of a single class. But now I'm trying to figure out how to lay out the presentation layer. So with this I would like to understand a few points: Do you have all controls as members of the form class, or can you make sub classes where some controls only exist on lower levels? Like for example if you have a tab where all controls only interact with each other, and not the rest of the form, would it then be possible to make this a separate class that holds both controls and additional logic ? The first problem I get when trying this is with the events, as if I simply move an event handler method to another class than the form class, I get the message: Handles clause requires a WithEvents variable defined in the containing type or one of its base types.What does this mean? and is there an easy way around this? I would like to understand how a slightly more complex PL is designed, so I know what direction to move in for studying/developing this.
View 3 RepliesI have a case statement which compares data by getting parameter such as "eq,ne,gt,..." and so on. Actually this method will filter data by getting filter parameter and filter value. How can I refactor below code?
[Code]...
All the refactoring tools for C# and VB.Net that I have seen only consider the source code in a single visual studio solution.For better or worse, our large (many related programs) system is spread over many solution files, however:All the code is below a single windows folder. Our nAnt based build system, builds all files in a windows folder to produce a single dll (bit more complex then this but not important for this question).Therefore ALL ".cs" and ".vb" files below the single root folder are part of the system.
So I am looking for refactoring and reverse engineering tools that take a single folder as input and act on all files below that folder.(The tools may need some help to decide what "public" and "internal" means, however most of the time "internal" means "in the same code tree" when a "code tree" is a folder that contains code and any child folders.)Now I am being greedy, I would like the tools to create a lot of all the refactorings that have been done and to be able to replay the refactorings. Then I could try out ideal and if they work, throw away my code, get the latest code, you do the refactorings and checkin the code before anyone else changes the files. (Likewise for when branches need merging)
I need to refactor the method GetVendorBalanceDue to call stored procedure spVendorBalance in my database. I have created the stored procedure and am not sure how to get the method to call the stored procedure. Here is my code:
Private Function GetVendorBalanceDue(ByVal vendorID As Integer) As Decimal Implements InvoiceService.GetVendorBalanceDue
Dim selectCommand As New SqlCommand
[Code].....
I have created a simply Pizza program (for a summer project not education related) that uses check boxes to determine what the customer wants. Basically a simple pizza ordering program.I was wondering as I have used the If statement over and other again for different parameters and variables, is it possible to use multiply arrays to simply the VB Code...I was advised to use Constructors in VB.Net Or is there a more simpler way to go about creating this program...or a better way of programing?What about decreasing the repetition in the code?
[code]...
I have a whole slew of database access functions which assume a particular connection string. Within my application I call
[Code]...
How do I refactor the method GetInvoiceNumbers to replace the SQL String concatenation with the StringBuilder class? Here is my code:
Private Function GetInvoiceNumbers() As System.Collections.Generic.List(Of Invoice) Implements InvoiceService.GetInvoiceNumbers
Dim invoiceList As New List(Of Invoice)
[Code].....
In VS2010 C#, when I right-click there is "Refactor" menu with following options:
[Code]....
Are these options available in VS2010 VB.Net? All I can see is "Rename" when I right click?
I'm currently refactoring an old Visual Basic DLL (VB.Net), which stores all of its data in one module called Globaldefinitions as public fields. There are about 200 fields, referenced thousands of times all around the code:
Public Module Globaldefinitons
Public a As Short
...
Public zz10 As Double
[Code]...
I need to change the module into a class with non-shared fields. This means, each and every of these thousands of references needs to reference the instance of that class:
globalDefinitionsInstance.a = 5
How do I go about this efficiently?
Regular expressions operating on the source fall flat. Refactoring tools like Re-Sharper or CodeRush don't seem to offer this functionality. Visual Studio 2010 cannot do it automatically either.
I have a problem reading data from an RFID-reader. I connect to the reader by tcp and wait for DataAvailable to be true, then reading the data until I got a end of data character. Then I just go back and waiting for a new DataAvailable. This is done in a own thread for the function.
There seems to be some kind of timeout, If I don't got any data in a couple of minutes, then it just sits there in the do/loop waiting for DataAvailable. I hold the card to the RFID reader, it beeps, but there is no data available. I don't get any exeptions, and the information says that the clientsocket is still connected. Are there anything more I can check?
If I put the card to the reader in a minute-interval it seems as this will never occur. So 2-3 minutes idle:ing seems to do this.
Here are my code to read data from the socket, I have taken away some irrelevant code:
Sub test(ByVal ip As String, ByVal port As Integer)
' this sub is meant to run forever
[CODE]......................
Im working on a HSD 32 bit data bus to serial converter via a microcontroller. Now first I want to make a sort of data sniffer to read the data bus (32Bit) .All on the controller side is working and the stream of bytes are coming in via RS232 as 4 bytes in HEX like FD,A5,45,8B . I already converted the bytes in Dec and ASCII to determine what is passed true the bus and how fast and stuff.. Now that is all correct and working very well if the LSB (least significant bit) of the 32 data bus is Data line 0 and the MSB (most significant bit) is Data line 31 but if that is not the case I need to invert the 32Bits (like as I would invert the connector on the bus) . How do I best do this using the 4 bytes I send from the micro controller.
Example:
(MSB) 01001000 01100101 01101100 01110000 (LSB)
HEX= 48 65 6C 70
DEC= 72,101,108,112
ASCII= H E L P
I need to invert it with a button to:
(MSB) 00001110 00110110 10100110 00010010 (LSB)
HEX= 0E 36 A6 12
DEC= 14,54,166,18
ASCII= (SO) 6 : (DC2)
I need to control a device with a GPIB port. I have the commands that I need to use to do this; but I don't know which is the sintaxis in Visual Basic.
For example if I need to send a instruction like "START:0.01" to the external device which are the libraries that I have to include?, how should I write the programming line to do this?
The main tasks that I need to program are sending data, receiving data, and saving data
I have a basic application that allows pre-defined users to use the application.The Username & passwords along with some other basic user info is stored in a simple access dbIn my application I want a user to login, Username & PasswordI create a connection string, a data adapter and a dataset, I then need to validate the password the user has entered.Would it be best to query the access db directly, or the dataset?
View 5 RepliesI am having an issue on the listbox when the new data value equal to previous data then = to "0". However, I want if the new data value( A ) is equal to the previous data( B ) then ( A ) equal to ( B ).
Delegate Sub ListBoxUpdater(ByRef listbox As ListBox, ByRef str As Object)
Private Sub OnQuoteUpdate(ByRef QuoteUpdate As LingLib.structQuoteUpdate)
UpdateListBox(lbBox, QuoteUpdate.tQuote)
End Sub
[code]....
My problem is when the new data comes out from the API, if it is equal to the previous data and it will appear 0. But what i want is the new data comes out is 0 and it will equal to previous data. e.g: first data comes out is 12.00, in above case, if the second data comes out is 12.00 but it will shows 0 which means unchanged. But in my case now, i want if the first data come out is 12.00, then if the next data is unchanged (0) and it will appear 12.00 and so on.
I am currently working on a API. I am having an issue on the listbox when the new data value equal to previous data then = to "0". However, I want if the new data value( A ) is equal to the previous data( B ) then ( A ) equal to ( B ).
Private Sub UpdateListBox(ByRef listbox As ListBox, ByRef str As Object)
If (listbox.InvokeRequired) Then
Me.BeginInvoke(New ListBoxUpdater(AddressOf UpdateListBox), listbox, str)
[code]....
how to connect to a database and retrive data in a table using oledb data provider in Microsoft access?
View 2 Repliesi want to create a table that include a current year data and as well as previous data to be compare. here is the example of the table that i want to create: but i want to compare one of the annual data with the previous year. as example i want to compare between the data of current AR of 2007 with the current AR for 2006, Current AR of 2006 with current AR for 2005 and go on~, but i have no idea how to do it.
View 1 Replies